【问题标题】:Error in Eclipse about type indirectly referenced from required .class fileEclipse 中有关从所需 .class 文件间接引用的类型的错误
【发布时间】:2021-11-17 11:46:04
【问题描述】:

我在 Axis2 生成的一些存根中遇到了这个异常:

" org.apache.axiom.om.OMElement 类型无法解析。它是 从所需的 .class 文件中间接引用”

我一直在阅读许多帖子,并试图找到解决方案。到目前为止,我发现将 apache tomcat 5.5 库添加到构建路径中。它删除了java文件中的错误,但是当我在项目中执行任何java程序时,我得到了这个错误:

'Launching myApp' 遇到问题 发生异常 执行命令行。无法运行程序“C:\Program Files\Java\jdk1.5.0_22\bin\javaw.exe”(在目录中 “D:\Digicel\workspace\Digicel\myClassSample”):CreateProcess 错误=87, 参数不正确

如果我从构建路径中删除 apache tomcat 库,我可以运行其他 java 程序,但不能运行最初提到的那个。

有什么想法吗?

【问题讨论】:

  • 好的,我在朋友的帮助下找到了问题的原因 :) 问题是 Eclipse 知道我的一个依赖项依赖于另一个库,并且 Eclipse 正在检查当它尝试构建代码时。所以,我所做的是尝试检查哪个 jar 文件包含这个库:“org.apache.axiom.om.OMElement”。我用谷歌搜索它,发现它是“axiom-api-1.2.10.jar”,最后我的文件编译时出现了 0 个错误。因此,解决方法是找到合适的 jar 并将其添加到项目中。
  • 他还向我解释说,我最初添加 apache tomcat 服务器库的解决方案是添加 apache tomcat 附带的所有 jar(这是一个很大的列表),并且可能已经有一个版本与我当前添加的 jar 列表冲突。因此,解决方法是找到合适的 jar 并将其添加到项目中。由于我是新用户,我必须再等 7 个小时才能发布我自己的问题的解决方案,所以,我改为发送评论:)

标签: eclipse


【解决方案1】:

好的,我在朋友的帮助下找到了问题的原因:)

问题是 Eclipse 知道我的一个依赖项依赖于另一个库,并且 Eclipse 在尝试构建代码时正在检查它。

所以,我所做的是尝试检查哪个 jar 文件包含这个库:“org.apache.axiom.om.OMElement”。

我用谷歌搜索它,发现它是“axiom-api-1.2.10.jar”,最后我的文件编译时出现 0 个错误。

他还向我解释说,我最初添加 apache tomcat 服务器库的解决方案是添加 apache tomcat 附带的所有 jar(这是一个很大的列表),并且可能与我当前的列表存在版本冲突添加的罐子。

因此,解决方法是找到合适的 jar 并将其添加到项目中。

【讨论】:

  • 表示您在项目中添加了 axiom-api-1.2.10.jar 并且问题解决了吗?
  • 是的@Dhrupal,就是这个意思
【解决方案2】:

当间接依赖项具有损坏的 jar 文件时,也会发生此错误。这可能是由公共 maven 存储库中的问题引起的。

如果是这种情况,删除本地 maven 存储库以下载新的 jar 文件将解决您的问题:

rm -Rf ~/.m2/repository/{enter/path/to/broken/stuff}

【讨论】:

  • 是的——这就是我遇到这个问题的原因。在您尝试打开 JAR 文件之前,您不会知道这一点。尝试查看损坏的 JAR 文件中的类时,我在 Eclipse 中看到的错误是“无效的 LOC 标头(错误的签名)”
【解决方案3】:

转到 Maven >更新 Maven 项目>选中强制更新 >然后运行 ..那个错误会消失....

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多