Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 启动jetty服务器时发生NoClassDefFoundError_Java_Linux_Spring_Jetty - Fatal编程技术网

Java 启动jetty服务器时发生NoClassDefFoundError

Java 启动jetty服务器时发生NoClassDefFoundError,java,linux,spring,jetty,Java,Linux,Spring,Jetty,我正在尝试在jetty server中托管我的webapp(spring)。我将war文件复制到jetty服务器的“webapp”文件夹中。我不是想嵌入jetty服务器,而是想在jetty中托管应用程序(比如tomcat) 我并没有安装jetty,我只是下载了jetty7的zip文件并解压缩了服务器 我需要在3台linux机器上进行设置。在一台机器上,服务器启动正常。没有问题 但在另外两种情况下,当服务器启动时,会显示以下错误 2013-04-24 18:52:59.540:INFO::star

我正在尝试在jetty server中托管我的webapp(spring)。我将war文件复制到jetty服务器的“webapp”文件夹中。我不是想嵌入jetty服务器,而是想在jetty中托管应用程序(比如tomcat)

我并没有安装jetty,我只是下载了jetty7的zip文件并解压缩了服务器

我需要在3台linux机器上进行设置。在一台机器上,服务器启动正常。没有问题

但在另外两种情况下,当服务器启动时,会显示以下错误

2013-04-24 18:52:59.540:INFO::started o.e.j.w.WebAppContext{/cpewebapp,file:/tmp/jetty-0.0.0.0-9080-cpewebapp.war-_cpewebapp-any-/webapp/},/home/manooja/jetty-hightide-7.4.0.v20110414/webapps/cpewebapp.war 2013-04-24 18:52:59.648:WARN::FAILED spring: java.lang.NoClassDefFoundError: org/springframework/web/context/support/DefaultWebEnvironment 2013-04-24 18:52:59.648:WARN::FAILED o.e.j.w.WebAppContext{/cpewebapp,file:/tmp/jetty-0.0.0.0-9080-cpewebapp.war-_cpewebapp-any-/webapp/},/home/manooja/jetty-hightide-7.4.0.v20110414/webapps/cpewebapp.war: java.lang.NoClassDefFoundError: org/springframework/web/context/support/DefaultWebEnvironment 2013-04-24 18:52:59.649:WARN::Unable to reach node goal: started java.lang.NoClassDefFoundError: org/springframework/web/context/support/DefaultWebEnvironment at org.springframework.web.servlet.HttpServletBean.(HttpServletBean.java:90) at org.springframework.web.servlet.FrameworkServlet.(FrameworkServlet.java:96) at org.springframework.web.servlet.DispatcherServlet.(DispatcherServlet.java:128) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at java.lang.Class.newInstance0(Class.java:372) at java.lang.Class.newInstance(Class.java:325) at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:606) at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:748) at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:426) at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:260) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:763) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:245) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1158) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:587) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:436) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:36) at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:180) at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:482) at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:135) at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:137) at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:50) at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:601) at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:531) at org.eclipse.jetty.util.Scanner.scan(Scanner.java:394) at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:329) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:114) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:543) at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:218) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:41) at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:50) at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:94) at org.eclipse.jetty.server.Server.doStart(Server.java:253) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1220) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1143) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.eclipse.jetty.start.Main.invokeMain(Main.java:477) at org.eclipse.jetty.start.Main.start(Main.java:623) at org.eclipse.jetty.start.Main.parseCommandLine(Main.java:273) at org.eclipse.jetty.start.Main.main(Main.java:81) Caused by: java.lang.ClassNotFoundException: org.springframework.web.context.support.DefaultWebEnvironment at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:423) at java.lang.ClassLoader.loadClass(ClassLoader.java:356) at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:420) at org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:373) at org.springframework.web.servlet.HttpServletBean.(HttpServletBean.java:90) at org.springframework.web.servlet.FrameworkServlet.(FrameworkServlet.java:96) at org.springframework.web.servlet.DispatcherServlet.(DispatcherServlet.java:128) at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) at java.lang.reflect.Constructor.newInstance(Constructor.java:525) at java.lang.Class.newInstance0(Class.java:372) at java.lang.Class.newInstance(Class.java:325) at org.eclipse.jetty.servlet.ServletContextHandler$Context.createServlet(ServletContextHandler.java:606) at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletHolder.java:748) at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:426) at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:260) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:763) at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:245) at org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1158) at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:587) at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:436) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.bindings.StandardStarter.processBinding(StandardStarter.java:36) at org.eclipse.jetty.deploy.AppLifeCycle.runBindings(AppLifeCycle.java:180) at org.eclipse.jetty.deploy.DeploymentManager.requestAppGoal(DeploymentManager.java:482) at org.eclipse.jetty.deploy.DeploymentManager.addApp(DeploymentManager.java:135) at org.eclipse.jetty.deploy.providers.ScanningAppProvider.fileAdded(ScanningAppProvider.java:137) at org.eclipse.jetty.deploy.providers.ScanningAppProvider$1.fileAdded(ScanningAppProvider.java:50) at org.eclipse.jetty.util.Scanner.reportAddition(Scanner.java:601) at org.eclipse.jetty.util.Scanner.reportDifferences(Scanner.java:531) at org.eclipse.jetty.util.Scanner.scan(Scanner.java:394) at org.eclipse.jetty.util.Scanner.doStart(Scanner.java:329) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.providers.ScanningAppProvider.doStart(ScanningAppProvider.java:114) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.deploy.DeploymentManager.startAppProvider(DeploymentManager.java:543) at org.eclipse.jetty.deploy.DeploymentManager.doStart(DeploymentManager.java:218) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.util.component.AggregateLifeCycle.doStart(AggregateLifeCycle.java:41) at org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:50) at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:94) at org.eclipse.jetty.server.Server.doStart(Server.java:253) at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:58) at org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:1220) at java.security.AccessController.doPrivileged(Native Method) at org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:1143) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.eclipse.jetty.start.Main.invokeMain(Main.java:477) at org.eclipse.jetty.start.Main.start(Main.java:623) at org.eclipse.jetty.start.Main.parseCommandLine(Main.java:273) at org.eclipse.jetty.start.Main.main(Main.java:81) 2013-04-24 18:52:59.654:INFO::Deployable added: /home/manooja/jetty-hightide-7.4.0.v20110414/webapps/root 2013-04-24 18:52:59.849:INFO::started o.e.j.w.WebAppContext{/,file:/home/manooja/jetty-hightide-7.4.0.v20110414/webapps/root/},/home/manooja/jetty-hightide-7.4.0.v20110414/webapps/root 2013-04-24 18:52:59.861:INFO::Deployment monitor /home/manooja/jetty-hightide-7.4.0.v20110414/contexts at interval 1 2013-04-24 18:52:59.950:INFO::Started SelectChannelConnector@0.0.0.0:9080 STARTING
正如Stevie在评论中指出的, 问题是另一个卷入战争的Jar文件

我从
WEB-INF/lib
中移除了Jar,在我的例子中是
spring-webmvc-3.1.0.M1.Jar
,并重新启动了jetty。它启动得很好

这没有被注意到,因为它在编译/构建时(在eclipse中订购了jar)没有出现,在我部署的第一台机器中也没有出现


非常感谢您的帮助。

您可以更改项目配置,就像我在本页中使用maven一样。

然后,当您在EclipseET中使用“更新maven项目”时,它将下载
complier的jedis.jar和其他关系文件。它将在jetty中工作以解决问题。

如果您直接使用jetty作为Eclipse J2EE集成服务器, 有时,它找不到一些库(我不明白为什么只有少数库找不到一些库),并抛出此类异常(NoClassDefFound)

  • 因此,您必须输入项目源(WEB-INF目录):您的JAR

  • 重新启动服务器

  • 它将JAR放入运行时WEB-INF: Data\workspace.metadata.plugins\org.eclipse.wst.server.core\tmpX\MyApp\WEB-INF\lib

  • 它是有效的


你是如何发动战争的?类路径中似乎缺少org.springframework.web.context.support.DefaultWebEnvironment。。。可能是(错误地)在正在工作的机器上的Jetty类路径上?spring支持jar真的在战争中吗?我不希望Jetty在你的代码中寻找这个类,因为有些东西需要这个类,这就是为什么java试图加载它,但找不到它。你使用的spring的确切版本是什么?DefaultWebEnvironment似乎只存在于3.1.0的预发行版本中(似乎它没有进入发行版)。我建议您至少更新到3.1.x的发行版,或者更好地更新到当前的3.2.2。。。也不要在Jetty的lib目录中放置任何jar!(如果你是这个意思的话)@user2315838这正是重点。您在内部使用的其他类需要它,但它丢失了,所以您得到了ClassNotFound。也许可以找到其他哪个类正在使用它。@user2315838我不知道。你最好的办法是找出哪个类使用了
DefaultWebEnvironment
(查看一些javadoc)并找出为什么它会使用它作为默认值,也许你可以将它设置为其他值。欢迎使用StackOverflow!虽然这可能提供了问题的答案,但您应该始终总结链接的内容,因为它们可能在将来不可用。非常感谢。我有这个问题java.lang.NoClassDefFoundError:org/mortbay/jetty/Handler已经尝试了org.mortbay.jetty的所有maven,但是找不到,打开.jar并包含该路径 Active Options: [Server, client, ext, jmx, jsp, resources, websocket] Version Information on 25 entries in the classpath. Note: order presented here is how they would appear on the classpath. changes to the OPTIONS=[option,option,...] command line option will be reflected here. 0: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-xml-9.0.2.v20130417.jar 1: 3.0.0.v201112011016 | ${jetty.home}/lib/servlet-api-3.0.jar 2: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-http-9.0.2.v20130417.jar 3: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-continuation-9.0.2.v20130417.jar 4: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-server-9.0.2.v20130417.jar 5: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-security-9.0.2.v20130417.jar 6: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-servlet-9.0.2.v20130417.jar 7: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-webapp-9.0.2.v20130417.jar 8: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-deploy-9.0.2.v20130417.jar 9: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-client-9.0.2.v20130417.jar 10: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-jmx-9.0.2.v20130417.jar 11: 2.2.0.v201303151357 | ${jetty.home}/lib/jsp/com.sun.el-2.2.0.v201303151357.jar 12: 2.2.0.v201303151357 | ${jetty.home}/lib/jsp/javax.el-2.2.0.v201303151357.jar 13: 1.2.0.v201105211821 | ${jetty.home}/lib/jsp/javax.servlet.jsp.jstl-1.2.0.v201105211821.jar 14: 2.2.0.v201112011158 | ${jetty.home}/lib/jsp/javax.servlet.jsp-2.2.0.v201112011158.jar 15: 2.2.2.v201112011158 | ${jetty.home}/lib/jsp/org.apache.jasper.glassfish-2.2.2.v201112011158.jar 16: 1.2.0.v201112081803 | ${jetty.home}/lib/jsp/org.apache.taglibs.standard.glassfish-1.2.0.v201112081803.jar 17: 3.8.2.v20130121-145325 | ${jetty.home}/lib/jsp/org.eclipse.jdt.core-3.8.2.v20130121.jar 18: (dir) | ${jetty.home}/resources 19: 9.0.2.v20130417 | ${jetty.home}/lib/websocket/websocket-api-9.0.2.v20130417.jar 20: 9.0.2.v20130417 | ${jetty.home}/lib/websocket/websocket-common-9.0.2.v20130417.jar 21: 9.0.2.v20130417 | ${jetty.home}/lib/websocket/websocket-server-9.0.2.v20130417.jar 22: 9.0.2.v20130417 | ${jetty.home}/lib/websocket/websocket-servlet-9.0.2.v20130417.jar 23: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-util-9.0.2.v20130417.jar 24: 9.0.2.v20130417 | ${jetty.home}/lib/jetty-io-9.0.2.v20130417.jar
antlr-2.7.6.jar
aopalliance-1.0.jar
bcprov-jdk15on-148.jar
c3p0-0.9.1.jar
commons-collections-3.2.1.jar
commons-dbcp-1.3.jar
commons-lang-2.6.jar
commons-logging-1.1.1.jar
commons-pool-1.5.4.jar
cpewebapp.jar
displaytag-1.2.jar
dom4j-1.6.1.jar
gson-1.6.jar
hibernate-commons-annotations-3.2.0.Final.jar
hibernate-core-3.6.4.Final.jar
hibernate-entitymanager-3.6.4.Final.jar
hibernate-jpa-2.0-api-1.0.0.Final.jar
hibernate-validator-4.2.0.Final.jar
jackson-core-asl-1.8.0.jar
jackson-mapper-asl-1.8.0.jar
javassist-3.12.0.GA.jar
json.jar
jta.jar
log4j-1.2.16.jar
servlet-2.3.jar
slf4j-api-1.6.1.jar
slf4j-log4j12-1.6.1.jar
spring-aop-3.1.0.RELEASE.jar
spring-asm-3.1.0.RELEASE.jar
spring-beans-3.1.0.RELEASE.jar
spring-context-3.1.0.RELEASE.jar
spring-context-support-3.1.0.RELEASE.jar
spring-core-3.1.0.RELEASE.jar
spring-expression-3.1.0.RELEASE.jar
spring-jdbc-3.1.0.RELEASE.jar
spring-ldap-core-1.3.0.RELEASE.jar
spring-ldap-core-tiger-1.3.0.RELEASE.jar
spring-orm-3.1.0.RELEASE.jar
spring-oxm-3.1.0.RELEASE.jar
spring-security-config-3.1.0.RELEASE.jar
spring-security-core-3.1.0.RELEASE.jar
spring-security-ldap-3.1.0.RELEASE.jar
spring-security-web-3.1.0.RELEASE.jar
spring-tx-3.1.0.RELEASE.jar
spring-web-3.1.0.RELEASE.jar
spring-webmvc-3.1.0.M1.jar
spring-web-servlet-3.1.0.RELEASE.jar
sqlite-jdbc-3.7.2.jar
velocity-1.6.2.jar
velocity-tools-view-2.0.jar