use of org.kie.memorycompiler.jdknative.NativeJavaCompiler in project drools by kiegroup.
the class AbstractKnowledgeTest method compile.
public List<String> compile(KieModuleModel kproj, MemoryFileSystem srcMfs, MemoryFileSystem trgMfs, List<String> classes) {
for (KieBaseModel kbase : kproj.getKieBaseModels().values()) {
Folder srcFolder = srcMfs.getFolder("src/main/resources/" + kbase.getName());
Folder trgFolder = trgMfs.getFolder(kbase.getName());
copyFolder(srcMfs, srcFolder, trgMfs, trgFolder, kproj);
}
Folder srcFolder = srcMfs.getFolder("META-INF");
Folder trgFolder = trgMfs.getFolder("META-INF");
trgFolder.create();
copyFolder(srcMfs, srcFolder, trgMfs, trgFolder, kproj);
JavaCompiler compiler = new NativeJavaCompiler();
CompilationResult res = compiler.compile(classes.toArray(new String[classes.size()]), trgMfs, trgMfs);
if (res.getErrors().length > 0) {
fail(res.getErrors()[0].getMessage());
}
List<String> classes2 = new ArrayList<String>(classes.size());
for (String str : classes) {
classes2.add(filenameToClassname(str));
}
return classes2;
}
Aggregations