javax/validation/Path GWT Java Maven对话
我在我的项目中使用GWT。最近,我尝试将GWT+Java+tomcat的手动编译转换为maven项目。我几乎能够成功地将其打包为war。但当我在tomcat上部署时,我遇到了以下错误: EVERE:调度传入RPC调用时发生异常 java.lang.NoClassDefFoundError:javax/validation/Path 位于java.lang.ClassLoader.defineClass1(本机方法) 位于java.lang.ClassLoader.defineClassCond(ClassLoader.java:632) 位于java.lang.ClassLoader.defineClass(ClassLoader.java:616) 位于java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141) 位于org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:2818) 位于org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:1159) 位于org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1647) 位于org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1526) 位于java.lang.Class.forName0(本机方法) 位于java.lang.Class.forName(Class.java:247) 位于com.google.gwt.user.server.rpc.SerializationPolicyLoader.loadFromStream(SerializationPolicyLoader.java:196) 位于com.google.gwt.user.server.rpc.RemoteServiceServlet.loadSerializationPolicy(RemoteServiceServlet.java:90) 位于com.google.gwt.user.server.rpc.RemoteServiceServlet.doGetSerializationPolicy(RemoteServiceServlet.java:293) 位于com.google.gwt.user.server.rpc.RemoteServiceServlet.getSerializationPolicy(RemoteServiceServlet.java:157) 位于com.google.gwt.user.server.rpc.impl.ServerSerializationStreamReader.prepareToRead(ServerSerializationStreamReader.java:455) 以下是我在我的javax/validation/Path GWT Java Maven对话,gwt,maven-2,smartgwt,Gwt,Maven 2,Smartgwt,我在我的项目中使用GWT。最近,我尝试将GWT+Java+tomcat的手动编译转换为maven项目。我几乎能够成功地将其打包为war。但当我在tomcat上部署时,我遇到了以下错误: EVERE:调度传入RPC调用时发生异常 java.lang.NoClassDefFoundError:javax/validation/Path 位于java.lang.ClassLoader.defineClass1(本机方法) 位于java.lang.ClassLoader.defineClassCond(
pom.xml
中添加的内容:
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-servlet</artifactId>
<version>${gwt.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.gwt</groupId>
<artifactId>gwt-user</artifactId>
<version>${gwt.version}</version>
<scope>provided</scope>
</dependency>
com.google.gwt
gwt servlet
${gwt.version}
编译
com.google.gwt
gwt用户
${gwt.version}
假如
作为依赖项
请帮帮我
我需要添加哪些内容来解决此问题 导致问题的原因是compile
实际上是默认范围,因此如果需要,可以从第一个依赖项中省略它
问题出现在第二个工件中,它被声明为提供的。这意味着应用程序希望web容器提供该库/类。看起来它没有提供所需的类,这导致了NoClassDefFoundError
删除提供的,
,将指示Maven将该库与应用程序打包,Tomcat应该能够克服该错误
由于gwt用户
在编译时可用,因此没有编译时错误。Tomcat在运行时根本无法使用它。是的,太好了。这很有效,现在我可以启动我的应用程序了。谢谢安迪,非常感谢。