0

在编写 Java 代码以使用 Web 服务时,我遇到了 NoClassDefFoundError 异常。经过一些谷歌搜索后,我意识到这个类存在于 axiom-impl-1.2.12.jar 中,我正在使用 axiom-impl-1.2.5.jar。我替换了它,然后由于 axiom-api-1.2.5.jar 开始出现其他类似的异常,所以使用了最新的 axiom.jar(其中包含 axiom-impl-1.2.14.jar、axiom-dom-1.2.14.jar 和axiom-api-1.2.14.jar),问题得到解决。

java.lang.NoClassDefFoundError: org/apache/axiom/om/OMSourcedElement
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:190)
    at org.apache.axiom.om.OMAbstractFactory.getOMFactory(OMAbstractFactory.java:55)
    at org.apache.axis2.util.XMLUtils.toOM(XMLUtils.java:566)
    at org.apache.axis2.deployment.DescriptionBuilder.buildOM(DescriptionBuilder.java:96)
    at org.apache.axis2.deployment.AxisConfigBuilder.populateConfig(AxisConfigBuilder.java:79)
    at org.apache.axis2.deployment.DeploymentEngine.populateAxisConfiguration(DeploymentEngine.java:615)
    at org.apache.axis2.deployment.FileSystemConfigurator.getAxisConfiguration(FileSystemConfigurator.java:115)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContext(ConfigurationContextFactory.java:64)
    at org.apache.axis2.context.ConfigurationContextFactory.createConfigurationContextFromFileSystem(ConfigurationContextFactory.java:180)
    at org.apache.axis2.client.ServiceClient.configureServiceClient(ServiceClient.java:146)
    at org.apache.axis2.client.ServiceClient.<init>(ServiceClient.java:139)

但问题是类似的代码正在使用旧 jars(axiom-impl-1.2.5.jar、axiom-dom-1.2.5.jar 和 axiom-api-1.2.5.jar)在我的队友机器上工作。我怀疑我在 eclipse(3.7)/tomcat(6.0) 中使用了一些配置,因为我的代码正在寻找最新的公理 jar。我正在使用 JDK 1.7.0_45 和 Axis2(1.3)

所以问题是这个配置是什么(或任何其他原因)?我怎样才能改变它,以便我也可以使用旧的公理罐(1.2.5 版本)?

4

0 回答 0