try (JarOutputStream jarOut = new JarOutputStream(Files.newOutputStream(jarP), manifest)) {
// add all classes first
Files.walkFileTree(binP, new SimpleFileVisitor<Path>() {
-
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
jarOut.putNextEntry(new JarEntry(binP.relativize(file).toString()));
// add resources
Files.walkFileTree(source, new SimpleFileVisitor<Path>() {
-
@Override
public FileVisitResult preVisitDirectory(Path dir, BasicFileAttributes attrs) throws IOException {
Path relativeP = source.relativize(dir);
Files.copy(file, jarOut);
return FileVisitResult.CONTINUE;
}
-
});
// add sources
// repackage
Path srcP = source.resolve("src");
Files.walkFileTree(srcP, new SimpleFileVisitor<Path>() {
-
@Override
public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException {
jarOut.putNextEntry(new JarEntry("OSGI-OPT/src/" + srcP.relativize(file).toString()));
return FileVisitResult.CONTINUE;
}
});
-
}
-
}
/**
* An ECJ {@link CompilationProgress} printing a progress bar while compiling.
*/
static class MakeCompilationProgress extends CompilationProgress {
- int totalWork;
- long currentChunk = 0;
-
- long chunksCount = 80;
+ private int totalWork;
+ private long currentChunk = 0;
+ private long chunksCount = 80;
@Override
public void worked(int workIncrement, int remainingWork) {
public void begin(int remainingWork) {
this.totalWork = remainingWork;
}
-
}
-
}