缺少工具.jar本地存储库中会中断 m2eclipse

2022-09-02 19:18:10

我遇到的问题是,eclipse 无法解决我项目的任何依赖项。这会导致问题,因为即使依赖项在编码时似乎工作正常(我得到自动完成),我仍然会得到一个巨大的错误列表,指的是丢失的工件。

在过滤这些时,我发现了以下内容:

容器“Maven Dependencies”引用不存在的库 '/home/[...]/.m2/repository/com/sun/tools/1.5.0/tools-1.5.0.jar'

这种依赖关系似乎是由 struts2 引入的,他们在 pom 中设置了如下配置文件:

<dependency>
    <groupId>com.sun</groupId>
    <artifactId>tools</artifactId>
    <version>1.5.0</version>
    <scope>system</scope>
    <systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>

该系统路径已解决,因此我看不出这会导致麻烦的原因。无论如何,有没有办法告诉eclipse这个m2eclipse依赖关系是在本地存储库中找不到的系统依赖关系?


答案 1

我遇到了同样的问题,需要做以下事情

  • 在 eclipse 中添加了 -vm path/to/jdk/bin.ini 文件
  • 清理现有工作区并重新加载项目。

它无缝地为我工作。

值得补充的是,在我的文件中,我必须在文件顶部添加-vm ...行。喜欢eclipse.ini

-vm
C:\Program Files\Java\jdk1.6.0_27\bin
... ... ...

确保 -vm 选项放在 -vmargs 之前,因为 -vmargs 之后的所有内容都直接传递给 vm,选择特定选项取决于 -vm 选项。


答案 2

我遇到了这个问题,但我已使用以下步骤修复:

案例1:

Eclipse 默认指向 JRE,但 Eclipse maven 插件需要 JDK,因此指向 JDK

Window -> Preperences -> Java -> 已安装的 JRE

将其更改为 JDK

按照步骤从 JRE 更改为 JDK

  1. 在 Eclipse IDE 中,转到:窗口...偏好。。。已安装的 JRE
  2. 选择默认的 JRE,然后单击“编辑”。
  3. 单击添加外部Jar
  4. 我在“C:\Program Files\Java\jdk1.6.0_22\lib”中找到工具.jar并添加了。

现在我可以毫无问题地构建我的项目。这是解决此问题的正确方法吗?


推荐