【发布时间】:2026-02-01 08:45:02
【问题描述】:
我有一个很少有 Maven 依赖项的 Maven 项目。在这些依赖项中,有一个来自我们自定义 maven 存储库的自定义 jar。
当尝试使用“Open Type”从该自定义 jar 中搜索类时,我看不到这些类。但我看到该 jar 在项目的“Maven 依赖项”下可用。我也可以在我的项目中使用 jar 中的类。
PS:
- 当我从项目中运行测试时,我会得到来自该 Jar 的类的“
ClassNotFoundException”。不知道这与eclipse无法在“Open Type”中列出的问题是否有关系。
【问题讨论】:
-
你能发布你的 pom.xml 吗?
-
如果双击Maven Dependencies中的类打开它会发生什么?也许 JAR 包含
.java而不是.class文件,或者.class文件的版本高于运行它所使用的 JRE/JDK。 -
@EugenCovaci 我无法按原样发布 pom。将其简化为与jar相关的部分并发布。
-
@howlger - jar 包含 .class 文件。 - 使用项目中使用的相同 jdk 版本构建和发布 jar。
-
这些只是关于一个信息很少的问题的两个原因示例(什么 JDK,您使用哪个 Eclipse 和 M4E 版本,JPMS 是/否,Maven 范围,...?)。这就是为什么我问你,如果你双击Maven Dependencies中的类打开它会发生什么?如果只有 Open Type 不起作用,请尝试在 Window > Preferences: Java 中单击 Rebuild Index 按钮。