75

win7でoracleのjdk 1.7.0_05を使用して、Eclipse 3.81のmavenプロジェクトのcdh4 mavenリポジトリからclouderaのorg.apache.hadoop:hadoop-client:2.0.0-cdh4.0.0 、m2eプラグインをインポートしようとしています

<dependency>
    <groupId>org.apache.hadoop</groupId>
    <artifactId>hadoop-client</artifactId>
    <version>2.0.0-cdh4.0.0</version>
</dependency>

ただし、次のエラーが表示されます。

The container 'Maven Dependencies' references non existing library 'C:\Users\MyUserId\.m2\repository\jdk\tools\jdk.tools\1.6\jdk.tools-1.6.jar'

より具体的には、maven は次のアーティファクトが欠落していると述べています

Missing artifact jdk.tools:jdk.tools:jar:1.6

これを解決するには?

4

12 に答える 12

95

jdk.tools:jdk.tools(またはcom.sun:tools、または任意の名前) は、JDK と共に配布される JAR ファイルです。通常、次のように Maven プロジェクトに追加します。

<dependency>
    <groupId>jdk.tools</groupId>
    <artifactId>jdk.tools</artifactId>
    <scope>system</scope>
    <systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>

依存関係を追加するためのMaven FAQを参照してくださいtools.jar

tools.jarまたは、次を使用してローカル リポジトリに手動でインストールすることもできます。

mvn install:install-file -DgroupId=jdk.tools -DartifactId=jdk.tools -Dpackaging=jar -Dversion=1.6 -Dfile=tools.jar -DgeneratePom=true

Cloudera が行ったように、次を使用して参照します。

<dependency>
    <groupId>jdk.tools</groupId>
    <artifactId>jdk.tools</artifactId>
    <version>1.6</version>
</dependency>
于 2012-06-20T11:01:33.267 に答える
37

npeのおかげで、追加

<dependency>
    <groupId>jdk.tools</groupId>
    <artifactId>jdk.tools</artifactId>
    <version>1.7.0_05</version>
    <scope>system</scope>
    <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath>
</dependency>

pom.xml にトリックをしました。

于 2012-06-20T11:14:07.117 に答える
11

tools.jar なしで生活でき、連鎖した依存関係としてのみ含まれている場合は、問題のあるプロジェクトから除外できます。

<dependency>
    <groupId>org.apache.ambari</groupId>
    <artifactId>ambari-metrics-common</artifactId>
    <version>2.1.0.0</version>
    <exclusions>
        <exclusion>
            <artifactId>jdk.tools</artifactId>
            <groupId>jdk.tools</groupId>
        </exclusion>
    </exclusions>
</dependency>
于 2016-09-09T18:32:20.937 に答える
0

JDKではなくJREのみをインストールしたため、この問題にも直面しました。そのため、 ${JAVA_HOME}/lib/ディレクトリにtools.jarが存在しなかったため、 jdk.toolsの依存関係を追加しても修正できません。

今、JDKをダウンロードしてインストール し、修正しました。

于 2014-11-21T03:18:07.567 に答える
0

おそらくシステムはjdkパッケージをインストールしますが、おそらくいくつかの開発ツールまたはプラグインです。

この問題は、opensuse env の下で見つかります。java-1_6_0-openjdk-devel をインストールします

問題は消えます..

于 2014-03-12T15:18:07.137 に答える
-3

わかりました、Windows OS を使用している場合

  1. C:\Program Files\Java\jdk1.8.0_40\lib に移動します (jdk のバージョンは異なる場合があります)。

  2. tools.jar が存在することを確認します (存在しない場合はダウンロードします)。

  3. このパス「C:\Program Files\Java\jdk1.8.0_40」をコピーします

  4. pom.xml 内

    <dependency>
    <groupId>jdk.tools</groupId>
    <artifactId>jdk.tools</artifactId>
    <version>1.8.0_40</version>
    <scope>system</scope>
    <systemPath>C:/Program Files/Java/jdk1.8.0_40/lib/tools.jar</systemPath>
    </dependency>
    
  5. 作り直して走れ!ビンゴ!

于 2015-07-20T12:34:46.893 に答える