构建错误:缺少 com.sun:tools:jar:1.6 工件。

16

尝试构建PlayN示例项目时,我遇到了以下问题:

Missing artifact com.sun:tools:jar:1.6  pom.xml /playn-cute line 6  Maven Dependency Problem

在每个pom.xml文件中都会出现这个错误。我该如何解决它?

编辑:

我已经在pom.xml中添加了profiles节点,但错误仍然存在。我已检查tools.jar是否存在,但实际上不存在。因此,我将tools.jar添加到lib文件夹中,但错误仍然存在。

完整的pom.xml代码:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>com.googlecode.playn</groupId>
        <artifactId>playn-project</artifactId>
        <version>1.0.1</version>
    </parent>

    <artifactId>playn-cute</artifactId>
    <name>PlayN Cute Metaproject</name>
    <version>1.0-SNAPSHOT</version>
    <packaging>pom</packaging>

    <properties>
        <playn.version>1.0.1</playn.version>
    </properties>

    <modules>
        <module>core</module>
        <module>java</module>
        <module>html</module>
        <!-- <module>flash</module> -->
        <module>android</module>
    </modules>

    <profiles>
        <profile>
            <id>default-tools.jar</id>
            <activation>
                <property>
                    <name>java.vendor</name>
                    <value>Sun Microsystems Inc.</value>
                </property>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>com.sun</groupId>
                    <artifactId>tools</artifactId>
                    <version>1.6</version>
                    <scope>system</scope>
                    <systemPath>${java.home}/../lib/tools.jar</systemPath>
                </dependency>
            </dependencies>
        </profile>
    </profiles>
</project>

你使用的是哪个操作系统?你的javac命令的确切路径是什么?你安装tools.jar的确切路径是什么?你安装了Java SDK还是只安装了Java JRE?听起来你只安装了后者,但你需要前者。 - samskivert
请检查我在类似的问题中的答案:我认为这与用于tools.jar的路径有关。 - Chris
我找到的快速解决方法是将JRE指向JDK文件夹中可用的那一个。 - Naveen Raj
这个回答解决了你的问题吗?缺失依赖 com.sun:tools:jar - Olivier
16个回答

0
对我来说,问题在于我安装了JRE但没有安装JDK。我知道这很奇怪,因为JRE应该可以工作,但实际上它不能。使用相同版本的JDK就可以正常工作。 这是一个Linux系统,没有IDE。

0

我通过在我的JDK安装的/lib目录下手动添加tools.jar到Eclipse JRE来解决了这个问题

窗口 > 首选项 > 已安装的JREs > 编辑 > 添加外部JAR文件 > 选择tools.jar进行添加


0

请在您的pom.xml文件中检查是否存在来自其他依赖项的tools.jar。如果是,请从中排除它,或者如果未使用,则删除该依赖项。

然后,请在您的问题部分中检查是否在eclipse中出现了tools.jar错误。

enter image description here


-1
这篇Apple Developer文章指出:

tools.jar不存在。通常在此处定位的类现在包含在classes.jar中。依赖于tools.jar存在的脚本需要相应地进行重写。


-2

我必须更改你所拥有的内容:

<systemPath>${java.home}/../lib/tools.jar</systemPath>

按照bmargulies所说的,使用JDK而不是JRE来显式指定路径:

 <systemPath>C:/Program Files/Java/jdk1.6.0_24/lib/tools.jar</systemPath>

希望这能有所帮助。

-2

在pom.xml文件中添加此依赖项。

<systemPath>属性中,您必须编写您的jdk lib路径。

<dependency>  
    <groupId>com.sun</groupId> 
    <artifactId>tools</artifactId>
    <version>1.4.2</version>
    <scope>system</scope>
    <systemPath>C:/Program Files/Java/jdk1.6.0_30/lib/tools.jar</systemPath>
</dependency> 

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接