fix: plugin null bugs

This commit is contained in:
CaiHQ 2021-11-08 13:56:00 +08:00
parent e1e0435589
commit e706180493

View File

@ -45,7 +45,7 @@ import java.util.concurrent.atomic.AtomicInteger;
public class CMHttpServer {
private static final Logger LOGGER = LogManager.getLogger(CMHttpServer.class);
private static final String CONFIG_PATH = "cmconfig.json";
public static CMDConf cmdConf;
public static CMDConf cmdConf;
public static EventLoopGroup workerGroup = new NioEventLoopGroup();
public static MultiIndexTimeRocksDBUtil nodeLogDB =
new MultiIndexTimeRocksDBUtil(
@ -53,6 +53,7 @@ public class CMHttpServer {
private static SslContext sslContext = null;
final String PATH = "/SCIDE/SCExecutor";
private final int port;
private static void parseConf(CMDConf cmdConf) throws IOException {
if (cmdConf.disableDoRepo) {
DoConfig.callContractUsingDOI = false;
@ -215,10 +216,10 @@ public class CMHttpServer {
}
}
start(cmdConf.ip, cmdConf.servicePort, cmdConf.doipPort,cmdConf);
start(cmdConf.ip, cmdConf.servicePort, cmdConf.doipPort, cmdConf);
}
public static void start(String ip, int port, int doipPort,CMDConf cmdConf) throws IOException {
public static void start(String ip, int port, int doipPort, CMDConf cmdConf) throws IOException {
if (DoConfig.callContractUsingDOI) {
ContractManager.threadPool.execute(
() -> ContractRepositoryMain.start("tcp://" + ip + ":" + doipPort));
@ -244,16 +245,20 @@ public class CMHttpServer {
return pathname.getName().endsWith(".jar");
}
});
URL[] urls = new URL[pluginJar.length];
for (int i=0;i<pluginJar.length;i++){
try {
urls[i] = pluginJar[i].toURI().toURL();
LOGGER.info("add plugin:"+pluginJar[i].getName());
} catch (MalformedURLException e) {
e.printStackTrace();
if (pluginJar != null && pluginJar.length > 0) {
URL[] urls = new URL[pluginJar.length];
for (int i = 0; i < pluginJar.length; i++) {
try {
urls[i] = pluginJar[i].toURI().toURL();
LOGGER.info("add plugin:" + pluginJar[i].getName());
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
pluginLoader = new URLClassLoader(urls, CMHttpServer.class.getClassLoader());
} else {
pluginLoader = new URLClassLoader(new URL[]{}, CMHttpServer.class.getClassLoader());
}
pluginLoader = new URLClassLoader(urls,CMHttpServer.class.getClassLoader());
if (port >= 18000 && port < 18100) {
ContractManager.cPort = new ContractPort(1615 + (port - 18000) * 30);
} else {