【发布时间】:2015-10-21 06:33:36
【问题描述】:
目前我通过以下步骤从 src 文件到 jar 进行一些运行时编译:
首先:在一个目录和子目录中生成源文件
/main
/submain1
/submain2
第二步:编译代码(目前所有.class文件都进入这个目录)
/builddir
第三:从.class文件生成jar到目标文件夹
/target
编译由 Java ToolProviders Javacompiler 完成
ArrayList<File> files1 = getSourceFiles();
Iterable<? extends JavaFileObject> compilationUnits1 = fileManager.getJavaFileObjectsFromFiles(files1);
JavaCompiler.CompilationTask task = compiler.getTask(null ,fileManager , null, optionList, null, compilationUnits1 );
boolean compiled = task.call();
现在我的第一个问题是,将所有 .class 文件分成不同的编译单元并重建与源文件相同的目录结构会更好吗?
如果是这样,怎么做?
【问题讨论】:
-
我很惊讶你能在没有具有相同结构的情况下让它工作(如果你能工作的话)。
-
你吓到我了……但是这个罐子是成功创建的。但它并没有经过严格的测试,因为一些必需的组件还没有实现。
标签: java jar build .class-file