feat():测试
parent
c4019ee777
commit
ceb61b1e37
|
@ -22,30 +22,10 @@ import java.util.Map;
|
|||
*/
|
||||
public class OSSFileCompile{
|
||||
|
||||
// public static Map<String, byte[]> compile(String fileName, String source,String extLib) throws IOException {
|
||||
// System.out.println("-------");
|
||||
// JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
|
||||
// StandardJavaFileManager stdManager = compiler.getStandardFileManager(null, null, null);
|
||||
// try (MemoryJavaFileManager manager = new MemoryJavaFileManager(stdManager)) {
|
||||
// JavaFileObject javaFileObject = manager.makeStringSource(fileName, source);
|
||||
// // 传入诊断监听器 size和传入的javaObject相同
|
||||
// DiagnosticCollector diagnosticCollector = new DiagnosticCollector();
|
||||
// List<String> optionList = Arrays.asList("-extdirs",extLib);
|
||||
// JavaCompiler.CompilationTask task = compiler.getTask(null, manager,diagnosticCollector, optionList, null, Arrays.asList(javaFileObject));
|
||||
// Boolean result = task.call();
|
||||
// if (result == null || !result.booleanValue()) {
|
||||
// throw new RuntimeException("Compilation failed.");
|
||||
// }
|
||||
// return manager.getClassBytes();
|
||||
// }
|
||||
// }
|
||||
|
||||
public static Result<Object> compile(String source,String extLib){
|
||||
public static Result<Object> compile(String source){
|
||||
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
|
||||
|
||||
// 执行编译任务
|
||||
int result = compiler.run(null, null, null, source);
|
||||
|
||||
// 检查编译结果
|
||||
if (result == 0) {
|
||||
System.out.println("编译成功,生成的.class文件位于源代码同目录");
|
||||
|
|
|
@ -76,21 +76,22 @@ public class OSSFileLoad {
|
|||
}
|
||||
//对路径里的.java文件进行编译
|
||||
System.out.println("第一步");
|
||||
SourceCodeCompiler.javaCompilerFile("home/"+fileName);
|
||||
System.out.println("第二步");
|
||||
File outputDir = new File("home/"); // 或者是你指定的其他输出目录
|
||||
System.out.println("第三步");
|
||||
File[] classFiles = outputDir.listFiles(); // 获取输出目录中的所有文件
|
||||
if (classFiles != null) {
|
||||
for (File classFile : classFiles) {
|
||||
if (classFile.getName().endsWith(".class")) {
|
||||
System.out.println("找到class文件 " + classFile.getName());
|
||||
}
|
||||
}
|
||||
//把.class文件存入oss中
|
||||
}else {
|
||||
System.out.println("没有找到文件");
|
||||
}
|
||||
OSSFileCompile.compile("home/"+fileName);
|
||||
// SourceCodeCompiler.javaCompilerFile("home/"+fileName);
|
||||
// System.out.println("第二步");
|
||||
// File outputDir = new File("home/"); // 或者是你指定的其他输出目录
|
||||
// System.out.println("第三步");
|
||||
// File[] classFiles = outputDir.listFiles(); // 获取输出目录中的所有文件
|
||||
// if (classFiles != null) {
|
||||
// for (File classFile : classFiles) {
|
||||
// if (classFile.getName().endsWith(".class")) {
|
||||
// System.out.println("找到class文件 " + classFile.getName());
|
||||
// }
|
||||
// }
|
||||
// //把.class文件存入oss中
|
||||
// }else {
|
||||
// System.out.println("没有找到文件");
|
||||
// }
|
||||
return Result.success(source);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue