String (String relativeArchivePath, String fileNameInArchive, String text) { File file = new File(getOrCreateProjectDir(), relativeArchivePath); try (ZipOutputStream output = new ZipOutputStream(new FileOutputStream(file))) { output.putNextEntry(new ZipEntry(fileNameInArchive)); output.write(text.getBytes(StandardCharsets.UTF_8)); output.closeEntry(); } catch (IOException e) { throw new RuntimeException(e); } return FileUtil.toSystemIndependentName(file.getAbsolutePath()); }