我们有一个使用Netbeans 6.7.1和Glassfish v2.1开发的Java 5项目。尝试用Netbeans 6.9.1和Glassfish v3.1打开这个项目时,会出现许多关于缺失类型的错误。
Java 6向后兼容Java 5吗?
缺少的图书馆通常围绕着:
javax.xml.rpc.ServiceException;
javax.xml.rpc.Stub;
org.jvnet.staxex.StreamingDataHandler;
com.sun.xml.ws.fault.SOAPFaultBuilder;有什么想法吗?
更新
似乎并不是所有必需的库都会自动添加到Glassfish 3.1项目的类路径中。主要缺失的jar是jaxrpc-api-osgi.jar下面的glassfish 3/glassfish/modules/。如果我手动添加这个jar,所有的问题都会消失。为什么会是这样呢?为什么不像使用NetBeans 6.7.1和Glassfish 2.1一样自动添加jar?
更新
我设法通过以下途径找到了org.jvnet.staxex.StreamingDataHandler; and com.sun.xml.ws.fault.SOAPFaultBuilder;:
看上去好像在换包裹。不过,这并没有解决javax.xml.rpc.Stub; and javax.xml.rpc.ServiceException;没有正确添加到类路径中的问题。我觉得手工添加这个罐子是不对的。
乌尔夫加普
发布于 2011-04-15 01:42:44
我通过卸载所有JDK、JRE和NetBeans来解决这个问题。重新安装后,问题得到了纠正。
WulfgarPro
发布于 2011-04-08 02:12:45
没有什么是完全向后兼容的,但是没有出现这些类是可疑的。至少前两者肯定是在Java /Java 6中。如果有不兼容的地方,我希望参数不匹配或方法找不到。
我首先要看的是Netbeans项目的设置--我敢打赌你的classpath.search路径不包括你需要的东西。
https://stackoverflow.com/questions/5589634
复制相似问题