![](/img/trans.png)
[英]Compiling .java files from the command line - external libraries, classpath
[英]Compiling external .java files from within Java
我正在制作一個將寫入.java文件,然后(希望)將這些文件編譯為.class文件的工具。 在一個過程中,用戶選擇一個文件目錄,其中寫入了多個.java文件。 現在,我希望程序編譯這些Java文件。
JavaCompiler
是您的朋友。 在此處查看文檔
這是一個有關如何使用編譯器API的示例
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnostics, null, null);
Iterable<? extends JavaFileObject> compilationUnits = fileManager.getJavaFileObjectsFromStrings(Arrays.asList("YouFileToCompile.java"));
JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, diagnostics, null,
null, compilationUnits);
boolean success = task.call();
fileManager.close();
如果代碼是從JRE運行的,則JavaCompiler
將為null
。 它需要一個JDK,其中包括tools.jar
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.