私が得るPlayNサンプルプロジェクトを構築しようとしています:
Missing artifact com.Sun:tools:jar:1.6 pom.xml /playn-cute line 6 Maven Dependency Problem
すべてのpom.xml
ファイル。どうすれば解決できますか?
編集:
プロファイルノード をpom.xml
に追加しましたが、エラーが残ります。 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>
このアーティファクトは常に「システム」の依存関係として処理されます。リポジトリに保存されることはありません。
詳細は http://maven.Apache.org/general.html#tools-jar-dependency を参照してください。
ツールjarがなく、Macを使用していない場合、要件がJDKであるときにJREを使用しようとしています。ファイルをコピーして、一方を他方に変えることはできません。
Eclipse設定のJREのリストからJREを削除し、そこにJDKがあっただけでも、Windows 7でEclipseを使用するときに同じ問題が発生しました。コマンドラインのMavenを使用しているか、Eclipseを使用しているかは質問に含まれていないため、Eclipseで修正された理由を共有したいと思います。
私がしなければならなかったのは、Eclipseを起動するために使用するショートカットのコマンドラインを変更して、-vm引数をそれに追加することでした。
-vm "T:\Program Files\Java\jdk1.6.0_26\bin"
もちろん、your JDKインストールのbinディレクトリを指すように調整します。これにより、Eclipse自体がJREではなくJDKを使用して実行され、tools.jar
を適切に見つけることができます。
Eclipse IDEでこのエラーが表示される理由はたくさんあります
このため、Preferences-> Java-> Installed JRE->(JDKを選択し、外部jarを編集して追加する-> tools.jarに移動する)を使用して、自分でtools.jarを追加できます。
Eclipseでpom.xmlの-> Dependency Heirarchyビューからtools.jarを見つける必要があります。jarを見つけたら、そこに除外を追加できます。
のように->
<groupId>com.parent.project</groupId>
<artifactId>parent-project-dependencies-pom</artifactId>
<version>${dependencies.version}</version>
<exclusions>
<exclusion>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
</exclusion>
</exclusions>
私はUbuntuでテストしています。 Javaツールに精通していません。JDKをインストールすると問題が解決しました。
aptitude install openjdk-6-jdk
私にもこの問題があり、Java_pathには問題はありませんでしたが、問題は解決しませんでした。私にとってうまくいった修正は:
次のコマンドを実行します(Dfileはtools.jarを指します):
mvn install:install-file -DgroupId=com.Sun -DartifactId=tools -Dversion=1.4.2 -Dpackaging=jar -Dfile="C:\Program Files\Java\jdk1.6.0_26\lib\tools.jar"
次に、メインのpom.xmlに依存関係への参照を追加します。
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>1.4.2</version>
</dependency>
POMに依存関係を追加する必要はありません。私はEclipseでこの問題を抱えていましたが、それはEclipseがJDKではなくJREで実行されていたことが原因でした。
同じ問題については、この質問を参照してください: Missing Artifact com.Sun:tools:jar
Eclipseが使用するvmを指定することで解決しました。また、EclipseプロジェクトのビルドパスがJREではなくJDKを使用していることも確認してください。
ビルドパスにJDKがあり、EclipseでJDKを明示的に設定するINIただし、パスのJavaがjreである場合、 jdk(windowsパス、またはlinux/mac同等)ではありません。
コマンドラインからこれを実行して、パス上のJavaが何であるかを確認します: WindowsマシンでJDKがインストールされている場所を見つけるにはどうすればよいですか?
JREの場合は、JDKに変更してIDEを再起動する必要があります。
あなたを助けることができるいくつかのポインター:
ありがとう。
これは私がそれを解決した方法です。以下の行をEclipse.iniファイルに貼り付けてください。
Java.exeまでの-vmパス(以下を参照)
-vm C:/ Program Files/Java/jdk1.7.0_60/bin/Java
それが役に立てば幸い。
私にとっての問題は、JDKをインストールせずにJREをインストールすることでした。 JREが動作するはずなので奇妙なことは知っていますが、動作しません。 JDKと同じバージョンで問題なく動作します。これはLinuxボックスでIDEはありません。
私は同じ問題を抱えていました、それはパスに複数のtools.jarファイルが原因でした。
しかし、問題はワークスペースのpom依存に固有でした。同じEclipseの他のワークスペースが正常に機能しているので、これを知った。
調査と解決のために私が取った手順:
1)プロジェクトpomファイルを開く
2)Dependency Hierarchies
pomのセクション
3)右上隅のフィルターテキストボックスに、名前tools.jarを入力します
4)これにより、tools.jarファイルの依存関係の階層が表示されます。
5)右側にResolved Section
、tools.jarファイルを選択し、jarファイルを右クリックします。
6)ファイルの除外を選択します。
次に、プロジェクトを再構築します。
これがJboss Developer Studio 8.1.1を使用してこの問題を解決した方法です。
次の場所にあるjbdevstudio.ini
ファイルに追加します:D:\Users\bertrand\jbdevstudio\studio
次の2行(-vmargs
の前):
-vm
C:\Program Files\Java\jdk1.7.0_79\bin
これを解決するには、jdkインストールの/ libにあるtools.jarをEclipse JREに手動で追加します。
「ウィンドウ」>「設定」>「インストール済みのJRE」>「編集」>「外部jarを追加」>追加するtools.jarを選択