Как я могу получить местоположение (путь) файла .class
, созданного с помощью API компилятора? Т.е. файл составлен по CompilationTask.call()
Вот код:
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
StandardJavaFileManager manager = compiler.getStandardFileManager(diagnostics, null, null);
File file = new File(System.getProperty("user.dir") + "/target/classes/tmp/" +"FileName.java");
Iterable<String> options = Arrays
.asList(new String[] { "-d", System.getProperty("user.dir") + "/target/classes/" });
Iterable<? extends JavaFileObject> sources = manager.getJavaFileObjectsFromFiles(Arrays.asList(file));
CompilationTask task = compiler.getTask(null, manager, diagnostics, options, null, sources);
task.call();
manager.close();