Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.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 ClassNotFoundException:com.google.gwt.dev.shell.jetty.JettyNullLogger_Java_Gwt_Jboss_Jetty_Errai - Fatal编程技术网

Java ClassNotFoundException:com.google.gwt.dev.shell.jetty.JettyNullLogger

Java ClassNotFoundException:com.google.gwt.dev.shell.jetty.JettyNullLogger,java,gwt,jboss,jetty,errai,Java,Gwt,Jboss,Jetty,Errai,我使用的是GWT2.7,勘误表3.1.1最终版本。我想用Eclipse的开发模式运行Errai+GWT示例项目。我将程序参数添加为-server org.jboss.errai.cdi.server.gwt.JettyLancher 引用了我的pom.xml文件。当我运行时,我在控制台上发现以下错误 Unable to load server class 'org.jboss.errai.cdi.server.gwt.JettyLauncher'java.lang.ClassNotFoundEx

我使用的是GWT2.7,勘误表3.1.1最终版本。我想用Eclipse的开发模式运行Errai+GWT示例项目。我将程序参数添加为
-server org.jboss.errai.cdi.server.gwt.JettyLancher

引用了我的pom.xml文件。当我运行时,我在控制台上发现以下错误

Unable to load server class 'org.jboss.errai.cdi.server.gwt.JettyLauncher'java.lang.ClassNotFoundException: org.jboss.errai.cdi.server.gwt.JettyLauncher
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:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at com.google.gwt.dev.DevMode$ArgHandlerServer.setString(DevMode.java:177)
at com.google.gwt.util.tools.ArgHandlerString.handle(ArgHandlerString.java:26)
at com.google.gwt.util.tools.ToolBase.processArgs(ToolBase.java:250)
at com.google.gwt.dev.ArgProcessorBase.processArgs(ArgProcessorBase.java:30)
at com.google.gwt.dev.DevMode.main(DevMode.java:412)
Google Web Toolkit 2.7.0
DevMode [-[no]startServer] [-port port-number | "auto"] [-whitelist whitelist-string] [-blacklist blacklist-string] [-logdir directory] [-logLevel level] [-gen dir] [-bindAddress host-name-or-address] [-codeServerPort port-number | "auto"] [-[no]superDevMode] [-server servletContainerLauncher[:args]] [-startupUrl url] [-war dir] [-deploy dir] [-extra dir] [-modulePathPrefix ] [-workDir dir] [-XmethodNameDisplayMode NONE | ONLY_METHOD_NAME | ABBREVIATED | FULL] [-sourceLevel [auto, 1.6, 1.7]] [-XjsInteropMode [NONE, JS, CLOSURE]] [-[no]incremental] module[s]

编辑:现在我添加下面的依赖项来修复它

    <dependency>  
     <groupId>org.jboss.errai</groupId>  
     <artifactId>errai-cdi-jetty</artifactId>
     <version>2.4.5.Final</version>
    </dependency>

org.jboss.errai
errai cdi码头
2.4.5.最终版本
但另一个错误如下所示

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/gwt/dev/shell/jetty/JettyNullLogger
at org.jboss.errai.cdi.server.gwt.JettyLauncher.<clinit>(JettyLauncher.java:558)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at com.google.gwt.dev.DevMode$ArgHandlerServer.setString(DevMode.java:177)
at com.google.gwt.util.tools.ArgHandlerString.handle(ArgHandlerString.java:26)
at com.google.gwt.util.tools.ToolBase.processArgs(ToolBase.java:250)
at com.google.gwt.dev.ArgProcessorBase.processArgs(ArgProcessorBase.java:30)
at com.google.gwt.dev.DevMode.main(DevMode.java:412)
Caused by: java.lang.ClassNotFoundException: com.google.gwt.dev.shell.jetty.JettyNullLogger
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:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 8 more
线程“main”java.lang.NoClassDefFoundError中的异常:com/google/gwt/dev/shell/jetty/JettyNullLogger 位于org.jboss.errai.cdi.server.gwt.JettyLancher(JettyLancher.java:558) 位于java.lang.Class.forName0(本机方法) 位于java.lang.Class.forName(Class.java:270) 位于com.google.gwt.dev.DevMode$ArgHandlerServer.setString(DevMode.java:177) 位于com.google.gwt.util.tools.ArgHandlerString.handle(ArgHandlerString.java:26) 位于com.google.gwt.util.tools.ToolBase.processArgs(ToolBase.java:250) 位于com.google.gwt.dev.ArgProcessorBase.processArgs(ArgProcessorBase.java:30) 位于com.google.gwt.dev.DevMode.main(DevMode.java:412) 原因:java.lang.ClassNotFoundException:com.google.gwt.dev.shell.jetty.JettyNullLogger 在java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:425) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:358) ... 8个以上
我不知道这是什么,也不知道如何修复它。

我只是在我的工作区中实现了缺少的类
公共类JettyNullLogger实现org.mortbay.log.Logger
(假设一个空的记录器不应该做太多…),它似乎可以工作

随后的异常是
java.lang.IllegalStateException:没有这样的servlet:javax.ws.rs.core.Application
。 因此,我将jetty默认的javax.ws.rs.core.Application实现添加到web.xml中:

<servlet>
    <servlet-name>Rest</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>Rest</servlet-name>
    <url-pattern>/rest/*</url-pattern>
</servlet-mapping>

到类路径。

@SamwiseGamgee No sir,我使用run as>Web应用程序(GWT超级开发模式)。这是包含此类的JAR列表@SamwiseGamgee Yes sir,我导入了gwt-dev-2.7.0,但是这个错误还没有解决。嘿,从这段代码来看,您正在使用maven:org.jboss.errai errai cdi jetty 2.4.5.Final在运行项目之前,您是否清理并安装了项目?
compile 'com.sun.jersey:jersey-core:1.+'
compile 'com.sun.jersey:jersey-server:1.+'
compile 'com.sun.jersey:jersey-servlet:1.+'