有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java缺少工具。本地存储库中的jar会破坏Eclipse

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

在筛选这些内容时,我发现了以下内容:

The container 'Maven Dependencies' references non existing library '/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依赖项是本地存储库中找不到的系统依赖项


共 (3) 个答案

  1. # 1 楼答案

    我也面临同样的问题,需要做以下事情

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

    这对我来说天衣无缝

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

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

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

  2. # 2 楼答案

    我有这个问题,但我已通过以下步骤修复:

    案例1:

    Eclipse默认指向JRE,但Eclipse maven插件需要JDK,所以指向JDK

    Window -> Preperences -> Java -> Installed JREs

    把它改成JDK

    按照以下步骤从JRE更改为JDK

    1. 在Eclipse IDE中,转到:窗口…首选项…已安装的JRE
    2. 选择defaulted JRE并单击Edit
    3. 点击Addexternaljar
    4. 我找到了工具。在“C:\Program Files\Java\jdk1.6.0_22\lib”中添加了jar

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