fix: plugin null bugs

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

View File

@ -53,6 +53,7 @@ public class CMHttpServer {
private static SslContext sslContext = null; private static SslContext sslContext = null;
final String PATH = "/SCIDE/SCExecutor"; final String PATH = "/SCIDE/SCExecutor";
private final int port; private final int port;
private static void parseConf(CMDConf cmdConf) throws IOException { private static void parseConf(CMDConf cmdConf) throws IOException {
if (cmdConf.disableDoRepo) { if (cmdConf.disableDoRepo) {
DoConfig.callContractUsingDOI = false; 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) { if (DoConfig.callContractUsingDOI) {
ContractManager.threadPool.execute( ContractManager.threadPool.execute(
() -> ContractRepositoryMain.start("tcp://" + ip + ":" + doipPort)); () -> ContractRepositoryMain.start("tcp://" + ip + ":" + doipPort));
@ -244,16 +245,20 @@ public class CMHttpServer {
return pathname.getName().endsWith(".jar"); return pathname.getName().endsWith(".jar");
} }
}); });
if (pluginJar != null && pluginJar.length > 0) {
URL[] urls = new URL[pluginJar.length]; URL[] urls = new URL[pluginJar.length];
for (int i=0;i<pluginJar.length;i++){ for (int i = 0; i < pluginJar.length; i++) {
try { try {
urls[i] = pluginJar[i].toURI().toURL(); urls[i] = pluginJar[i].toURI().toURL();
LOGGER.info("add plugin:"+pluginJar[i].getName()); LOGGER.info("add plugin:" + pluginJar[i].getName());
} catch (MalformedURLException e) { } catch (MalformedURLException e) {
e.printStackTrace(); e.printStackTrace();
} }
} }
pluginLoader = new URLClassLoader(urls,CMHttpServer.class.getClassLoader()); pluginLoader = new URLClassLoader(urls, CMHttpServer.class.getClassLoader());
} else {
pluginLoader = new URLClassLoader(new URL[]{}, CMHttpServer.class.getClassLoader());
}
if (port >= 18000 && port < 18100) { if (port >= 18000 && port < 18100) {
ContractManager.cPort = new ContractPort(1615 + (port - 18000) * 30); ContractManager.cPort = new ContractPort(1615 + (port - 18000) * 30);
} else { } else {