53 lines
1.6 KiB
Java
53 lines
1.6 KiB
Java
package com.muyu.rule.server;
|
||
|
||
|
||
import com.muyu.rule.common.utils.OssUtil;
|
||
import com.muyu.rule.server.complie.SourceCodeComplier;
|
||
import com.muyu.rule.server.execution.EngineExecution;
|
||
import com.muyu.rule.server.load.JavaBinaryClassLoader;
|
||
import com.muyu.rule.server.pool.container.EngineContainer;
|
||
|
||
import javax.tools.JavaCompiler;
|
||
import javax.tools.ToolProvider;
|
||
import java.io.FileInputStream;
|
||
import java.io.FileNotFoundException;
|
||
import java.io.InputStream;
|
||
import java.nio.file.Path;
|
||
import java.nio.file.Paths;
|
||
import java.util.HashMap;
|
||
import java.util.Map;
|
||
|
||
/**
|
||
* @Author:张承志
|
||
* @Package:com.muyu.rule.server
|
||
* @Project:cloud-etl-rule
|
||
* @name:EngineTest
|
||
* @Date:2024/8/22 18:55
|
||
*/
|
||
public class EngineTest {
|
||
|
||
public static void main(String[] args) throws InstantiationException, IllegalAccessException, NoSuchMethodException {
|
||
|
||
EngineConfig engineConfig = new EngineConfig();
|
||
|
||
//扫描原码进行编译+-+-
|
||
SourceCodeComplier.javaCompilerPath(engineConfig.getLocation());
|
||
//对class文件进行自定义类加载规则引擎
|
||
Map<String ,Class<?>> stringClassMap = JavaBinaryClassLoader.loadClassesByLocation(engineConfig.getPack(),engineConfig.getLocation());
|
||
|
||
stringClassMap.forEach((key,value)->{
|
||
System.out.println(key+"_____"+value);
|
||
});
|
||
stringClassMap.forEach(EngineContainer::loadEngineInstance);
|
||
|
||
Map<String, Object> params = new HashMap<>();
|
||
|
||
params.put("idcard","142021200212215977");
|
||
|
||
Object engineObject = EngineExecution.engineExe("Engine_2024_8_23_2347", params);
|
||
|
||
System.out.println("====>"+engineObject);
|
||
}
|
||
|
||
}
|