Witam Mam wymagania do tworzenia, kompilowania i ładowania klas uruchamiania java. Korzystając z FTL, tworzę pliki źródłowe java i mogę skompilować źródło, jeśli nie ma zależności dynamicznej.Używanie Java Compiler API do kompilowania wielu plików Javy
Aby opracować za pomocą instancji, mam dwa pliki źródłowe java, jeden interfejs i jego klasa implementacji. Jestem w stanie skompilować interfejsu za pomocą kompilatora Java API następująco
String classpath=System.getProperty("java.class.path");
String testpath =classpath+";"+rootPath+"/lib/is_wls_client.jar;"+rootPath+"/rtds_wls_proxyclient.jar;.;";
File javaFile = new File(javaFileName+".java");
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
List<String> optionList = new ArrayList<String>();
optionList.addAll(Arrays.asList("-classpath",testpath));
StandardJavaFileManager sjfm = compiler.getStandardFileManager(null, null, null);
Iterable fileObjects = sjfm.getJavaFileObjects(javaFile);
JavaCompiler.CompilationTask task = compiler.getTask(null, null, null,optionList,null,fileObjects);
task.call();
sjfm.close();
ustawić ścieżkę klasy dla klas statycznych, które są już w ścieżce klasy, ale takie podejście nie działa na dynamicznie tworzonych klas? Każdy niestandardowy program ładujący klasy zrobi poprawkę? Moja ostateczna realizacja będzie w web/aplikacji serwera
Wszelkie uwagi będą bardzo mile widziane
Satheesh
Po zdefiniowaniu klasy musisz ją rozwiązać. –