我尝试检测应用程序是否在Eclipse Jetty上作为servlet容器运行.我找到了Mortbay Jetty的解决方案,但不是Eclipse的实际版本.我修改了现有的检查并将Classpath从"/org/mortbay/jetty/Server.class"替换为"/org/eclipse/jetty/server/Server.class",但是在Jetty 9上检查失败.运行相同的应用程序tomcat很成功.我错了什么?
代码如下:
private boolean detect(final String clazz) {
try {
final ClassLoader systemClassLoader = ClassLoader.getSystemClassLoader();
systemClassLoader.loadClass(clazz);
return true;
} catch (final ClassNotFoundException cnfe) {
final Class<?> classObj = getClass();
if (classObj.getResource(clazz) != null) {
return true;
} else {
return false;
}
}
}
Run Code Online (Sandbox Code Playgroud)
调用函数:
detect("/org/eclipse/jetty/server/Server.class");
Run Code Online (Sandbox Code Playgroud)