私は私のwebプロジェクトでmavenを使用しています。これは私のpom.xmlの外観です。Eclipsejunoを使用しており、Apache Tomcat 7を使用しています。WindowsXP OSを実行しています。 "C:\ Program Files\Java\jdk1.6.0_23\lib"は私のツールjarはpom.xmlでハードコーディングしようとしましたが、ハードコードができないことを伝えていました。プロファイルを使用して以下を試してみましたが、同じエラー「アーティファクトcom.Sun:tools:jar:1.5.0がありません」を助けてください。 1週間のグーグルからうんざり
</dependencies>
<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.5.0</version>
<scope>system</scope>
<systemPath>${Java.home}/../lib/tools.jar</systemPath>
</dependency>
</dependencies>
</profile>
</profiles>
</project>
I:\Eclipse-jee-juno-RC3-win32\workspace\MYProject>mvn clean install
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building MYProject 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.594s
[INFO] Finished at: Sat Feb 23 20:49:53 GMT+05:30 2013
[INFO] Final Memory: 3M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project MYProject: Could not resolve dependencies for project MYProject:MYProject:war:0.0.1-SNAPSHOT: Failure to find com.Sun:tools:jar:1
.5.0 in http://repo.maven.Apache.org/maven2 was cached in the local repository, resolution will not be reattempted until the update interval of central has elapsed or updates are forced -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.Apache.org/confluence/display/MAVEN/DependencyResolutionException
'cmd' is not recognized as an internal or external command,
operable program or batch file.
I:\Eclipse-jee-juno-RC3-win32\workspace\MYProject>
Mavenやpomとは関係ありません。 EclipseからMavenを実行しようとしているため、EclipseでJDKを適切に構成する必要があります。 Eclipseで言及されているJDKのバージョンは、インストールされているバージョンではないと思います。 Eclipseで変更して、JREシステムライブラリがインストール済みのJDKパスを指すようにします。
Mac OS Xで開発している場合、これは既知の問題です。 Mac Developer Library によれば、
tools.jarが存在しません。通常ここにあるクラスは、代わりにclasses.jarに含まれています。
これは私にとってMacで動作します:
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>${Java.version}</version>
<scope>system</scope>
<systemPath>${Java.home}/../Classes/classes.jar</systemPath>
</dependency>
Macを使用してtools.jarの下のいくつかのクラスを使用するプロジェクトをコンパイルすると、同じエラーが発生しますが、Linuxではすべて問題ありません。だから私は明示的にmavenの依存関係を追加します、それは動作します。重要なポイントは、systemPathが正しいかどうかを確認することだと思います。 ps:私のjdkバージョンは1.7です。
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>${Java.version}</version>
<scope>system</scope>
<systemPath>${Java.home}/../lib/tools.jar</systemPath>
</dependency>
Java JRE 6の代わりにJDK 6がインストールされていることを確認します。次に、EclipseでJavaランタイムが正しく設定されているかどうかを確認します(設定-> = Java->インストール済みのJRE)。
この問題がmacで発生する場合、依存関係を削除します。してみてください。デフォルトでは、tools.jarが実行時に含まれます。この依存関係を追加する必要があるのは、WindowsおよびLinuxマシンのみです。
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>1.5.0</version>
<scope>system</scope>
<systemPath>${Java.home}/lib/tools.jar</systemPath>
</dependency>
参照: maven参照
次のようにします。
手動でpom.xmlにtools.jar依存関係を追加します。次も参照できます: http://maven.Apache.org/general.html#tools-jar-dependency
<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>
これはあなたのjdkバージョンでなければなりません、それはちょうど1.6であるようです。
試して頂けますか
<dependency>
<groupId>com.Sun</groupId>
<artifactId>tools</artifactId>
<version>1.5.0</version>
</dependency>
または、次の情報を使用して新しい依存関係を追加してみてください
グループID:com.Sun
アーティファクトID:ツール
バージョン:1.5.0
これでうまくいきます。
私も同様の問題があり、次のように修正しました。
コマンドプロンプトでJDKインストールパスのlibディレクトリに移動します。以下のコマンドを実行してインストールし、tools.jarをインストールします。 $ mvn install:install-file -DgroupId = Sun.jdk -DartifactId = tools -Dpackaging = jar -Dversion = 1.6 -Dfile = tools.jar