< prev index next >

test/jdk/tools/jpackage/helpers/jdk/jpackage/test/JarBuilder.java

Print this page




  50         return this;
  51     }
  52 
  53     public JarBuilder addSourceFile(Path v) {
  54         sourceFiles.add(v);
  55         return this;
  56     }
  57 
  58     public JarBuilder setModuleVersion(String v) {
  59         moduleVersion = v;
  60         return this;
  61     }
  62 
  63     public void create() {
  64         TKit.withTempDirectory("jar-workdir", workDir -> {
  65             if (!sourceFiles.isEmpty()) {
  66                 new Executor()
  67                         .setToolProvider(JavaTool.JAVAC)
  68                         .addArguments("-d", workDir.toString())
  69                         .addPathArguments(sourceFiles)
  70                         .execute().assertExitCodeIsZero();
  71             }
  72 
  73             Files.createDirectories(outputJar.getParent());
  74             if (Files.exists(outputJar)) {
  75                 TKit.trace(String.format("Delete [%s] existing jar file", outputJar));
  76                 Files.deleteIfExists(outputJar);
  77             }
  78 
  79             Executor jarExe = new Executor()
  80                     .setToolProvider(JavaTool.JAR)
  81                     .addArguments("-c", "-f", outputJar.toString());
  82             if (moduleVersion != null) {
  83                 jarExe.addArguments(String.format("--module-version=%s",
  84                         moduleVersion));
  85             }
  86             if (mainClass != null) {
  87                 jarExe.addArguments("-e", mainClass);
  88             }
  89             jarExe.addArguments("-C", workDir.toString(), ".");
  90             jarExe.execute().assertExitCodeIsZero();
  91         });
  92     }
  93     private List<Path> sourceFiles;
  94     private Path outputJar;
  95     private String mainClass;
  96     private String moduleVersion;
  97 }


  50         return this;
  51     }
  52 
  53     public JarBuilder addSourceFile(Path v) {
  54         sourceFiles.add(v);
  55         return this;
  56     }
  57 
  58     public JarBuilder setModuleVersion(String v) {
  59         moduleVersion = v;
  60         return this;
  61     }
  62 
  63     public void create() {
  64         TKit.withTempDirectory("jar-workdir", workDir -> {
  65             if (!sourceFiles.isEmpty()) {
  66                 new Executor()
  67                         .setToolProvider(JavaTool.JAVAC)
  68                         .addArguments("-d", workDir.toString())
  69                         .addPathArguments(sourceFiles)
  70                         .execute();
  71             }
  72 
  73             Files.createDirectories(outputJar.getParent());
  74             if (Files.exists(outputJar)) {
  75                 TKit.trace(String.format("Delete [%s] existing jar file", outputJar));
  76                 Files.deleteIfExists(outputJar);
  77             }
  78 
  79             Executor jarExe = new Executor()
  80                     .setToolProvider(JavaTool.JAR)
  81                     .addArguments("-c", "-f", outputJar.toString());
  82             if (moduleVersion != null) {
  83                 jarExe.addArguments(String.format("--module-version=%s",
  84                         moduleVersion));
  85             }
  86             if (mainClass != null) {
  87                 jarExe.addArguments("-e", mainClass);
  88             }
  89             jarExe.addArguments("-C", workDir.toString(), ".");
  90             jarExe.execute();
  91         });
  92     }
  93     private List<Path> sourceFiles;
  94     private Path outputJar;
  95     private String mainClass;
  96     private String moduleVersion;
  97 }
< prev index next >