web-dev-qa-db-ja.com

tools.jarが見つかりません

私はJavaでプロジェクトを構築しています。

私はこのエラーがあります:

Unable to locate tools.jar. Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar

私はJDKとフォルダをインストールしました:C:\Program Files\Java\jre6\libは私のシステムにありますが、ファイルtools.jarはそこにありません。

170
olidev

はい、Java Development Kit(JDK)の代わりにJava Runtime Environment(JRE)をダウンロードしてインストールしました。後者にはtools.jar、Java.exe、javac.exeなどがあります。

180
duffymo

これがまだ誰にとっても問題である場合には、私は前の答えについて少し明確にします。私はAntを使って同じ問題に遭遇し、JDKだけがインストールされていました。しかし、JDKインストーラは私にこのようなディレクトリ構造を与えました:

 Directory of C:\Program Files\Java

05/08/2012  09:43 AM    <DIR>          .
05/08/2012  09:43 AM    <DIR>          ..
05/08/2012  09:46 AM    <DIR>          jdk1.7.0_04
05/08/2012  09:19 AM    <DIR>          jre6
05/08/2012  09:44 AM    <DIR>          jre7
               0 File(s)              0 bytes

私がantを実行したとき、jre7サブディレクトリの下にtools.jarが見つからないことについて不満がありました。エラーが消えたのはset "Java_HOME=C:\Program Files\Java\jdk1.7.0_04"までではありませんでした。

86
Blake Mitchell
  1. Java SDK をインストールしてください。

  2. JDKの場所の値を使用して、Java_HOMEというシステム環境変数を追加します。
    コントロールパネル\システムとセキュリティ\システムに移動します。詳細システム設定、環境変数、システム変数、新規...例:
    変数名:Java_HOME
    変数値:C:\ Program Files\Java\jdk1.7.0_21

  3. Antコマンドを再実行する前に新しい変数が有効になるように、CMDウィンドウを閉じる/再度開きます。

38
James Lawruk

私は同じ問題を抱えていてコピーC:\Program Files\Java\jdk1.6.0_26\lib\tools.jartoC:\Program Files\Java\jre6\lib\extは私のために働きました

27
Kamlesh Pant

Linuxを使用している場合は、システムにJavaをインストールすることでこれを解決できます。

Sudo apt-get install openjdk-7-jdk openjdk-7-jre
10
mimoralea

Java_HOME環境変数をC:\Program Files\Java\jdk1.7.0_02を指すように設定します。

10
Zorayr

いいえ、ディレクトリ構造に応じて、JDKではなくJREをインストールしました。違いがあります。

C:\Program Files\Java\jre6\lib
                      ^^^^

それは次のようになります。

C:\Program Files\Java\jdk1.6.0_24
6

tools.jarを探すのにあまり時間をかけないでください。あなたがそのようなエラーに遭遇した場合、動揺しないでください。

Java JDK 1.5を既にお持ちの場合は、libフォルダに移動して、そこにtools.jarがあるはずです。それをコピーしてant binフォルダーに貼り付けてから、ant -versionコマンドを使用してみてください。

期待通りの結果になるはずです。

5
sathiya

JDK 9.0.1をインストールした場合は、tools.jarが廃止されたため、この問題も発生します。 移行ドキュメント を参照してください。

4
Graham Chiu

Linuxマシンでも同じ問題がありました。私はJDKとJREの両方をインストールしたので、最初はかなりイライラしました。私は同時にバージョン1.6、1.7、および1.8を使用しています、そして私はすべてを適切に設定させるために代替手段でたくさん遊んでいます。

問題は解決するのが非常にばかげていましたが、直感に反するものでした。私は正しいJDKを使用している間、私はツールjar mavenが不平を言っている道に注意を払いました - それがそれであることを期待していました

$Java_HOME\..\lib\tools.jar

$Java_HOME変数は私のjdkフォルダーを直接指していました(/usr/local/Javaも正しい$PATHエントリーおよび代替のsymリンクでした)。実際には、libフォルダoutside Javaディレクトリを検索します。

$Java_HOME\..\lib\tools.jar

に解決します

/usr/local/lib/tools.jar

それは有効な場所ではありません。

これを解決するために、$Java_HOME変数は代わりにこの場所/usr/local/Java/jreを指す必要があります(JDKパスが/usr/local/Javaであると仮定して) - 実際には各JDKに付属するjreフォルダーがJDKインストールディレクトリ内にあります。この新しい設定により、MavenはJREディレクトリを見るようになります。これはJDKの一部です。

$Java_HOME\..\lib\tools

これは今解決する

/usr/local/Java/jre/../lib/tools.jar

そして最後に

/usr/local/Java/lib/tools.jar

これがtools.jarが実際に存在する場所です。

そのため、JREの代わりにJDKを実際に使用している場合でも、$ Java_HOMEはJREを指している必要があります。覚えておいて、OSの代替はまだJDKを参照する必要があります。

4
Ivaylo Slavov

javaをインストールした場所のjdkパスに移動します。

例えば私のPCではJDKは次のパスにインストールされています

"C:¥Program Files¥Java¥jdk1.7.0_17¥";

Libフォルダに移動した後、例: "C:\ Program Files\Java\jdk1.7.0_17\lib"

libディレクトリにtool.jarファイルがあります

このファイルをコピーしてjre7ディレクトリのlibフォルダに貼り付けます。

"C:¥Program Files¥Java¥jre7¥lib"

3
sandeep

私のC:\Program Files\Java\jdk1.7.0_79にJDK_path(Java_HOME)があり、PATHにJDK_path¥binもありました。しかし、それでも私のアリはJDKの代わりにJREを使用していました。

問題は、JDKパスの前にPATH変数にC:\ProgramData\Oracle\Java\javapathがあることでした。 JDKパスをOracleパスの前に移動しただけで問題は解決しました。

2
Arashsoft

Ubuntuでも同様の問題が発生する可能性があります。

Embedded error: tools.jar not found: /usr/lib/jvm/Java-7-openjdk-AMD64/jre/../lib/tools.jar

問題は、正しく設定されていないJava_HOMEにあります。

そのため、Ubuntu 14.04 x 64(Java 8を使用):

Sudo apt-get install openjdk-8-jdk openjdk-8-jre
export Java_HOME=/usr/lib/jvm/Java-8-openjdk-AMD64
2

Java JDKをインストールしてJava_HOME..\jdk1.6.0_45\binフォルダに設定した後も同じ問題がありました。

Antはまだtools.jarフォルダーでC:\Program Files\Java\jre6\libを見つけようとしています。
環境変数JAVACMDを追加してパスをjdkフォルダのJava.exeに設定することで修正しました。
私の場合はC:\Program Files\Java\jdk1.6.0_45\bin\Java.exeでした

2
user3243105

Eclipseウィンドウ>設定> Java>インストールされたJREで、私はjdk 1.7のjreディレクトリにディレクトリをポイントし、私は私のためにファイルを作業しました。例えばC:\ Program Files\Java\jdk1.7.0_71\jre

2
Vimal Basdeo

私はWindows osで次のように実行する前にJava_HOME変数を設定することで解決しました:

java_HOME = C:¥Program Files¥Java¥jdk1.8.0_111に設定します。

1
Ramy Feteha

%Java_HOME%と%Java_HOME%/ binの両方のパスがPATH変数に追加されていることを確認してください。

Tools.jarを正しい位置にコピーすることに関するすべての答えは、よくても悪い考えです。

あなたのIDEがこれらのjarファイルを設計され意図された方法で見つけられることを確認してください。

多くの人が言ったように、tools.jarファイルのJDKではなくJREを調べているようです。

また、JDKの最近のバージョンでは、tools.jarファイルはもう存在しません。今日(JDKバージョン12)の最新のJDKをダウンロードしましたが、tools.jarが見つかりませんでした。 JDKバージョン8(1.8.0)をここからダウンロードする必要がありました https://www.Oracle.com/technetwork/Java/javase/downloads/jdk8-downloads-2133151.html tools.jarファイルを取得します。私はそのバージョンをダウンロードし、tools.jarファイルを取り、それを私の最近のバージョンのlibフォルダーに入れました。

1
alt440

私も同じエラーに直面していました。これは、Java_HomeのパスをC:\ Program Files\Java\jdk1.8.0_121に設定した後で削除されました。システムパス変数に%Java_HOME%\ binを定義した後、binがパスに含まれず、jdk1.8.0_121の後にスラッシュがないことを確認してください。

0
Nits

RHEL環境にいる場合は、tools.jarを含むパッケージ名は "openjdk-devel"で終わります。

0
TastyWheat

この問題を解決するには、単にtools.jarファイルをC:¥Program Files¥Java¥jre1.8.0_112¥libからC:¥Program Files¥Java¥jdk1.8.0_112¥libにコピーしたので、2つのtools.jarがあります。 1の代わりにファイルと問題が消えた。

0
estudiante
Expected to find it in C:\Program Files\Java\jre6\lib\tools.jar

あなたがjdkをインストールしたならば

..Java/jdkx.x.x

フォルダはそこに存在している必要があります。

C:\Program Files\Java\jdk1.6.0\lib\tools.jar
  • Antファイルを右クリック
  • [別のユーザーとして実行]をクリックし、[Ant Build ...]をクリックします。
  • [JRE]タブに移動します
  • JREではなくJDKを選択してください
0
RotS

クラスパスが正しく設定され、インストールしたJDKの正しいバージョンを指していることを確認してください。また、あなたはOpen JDKを使っていますか?私がオープンJDKからSuns JDKに移行しようとした後に、私はこの問題を以前に経験しました。 This はその問題がどのように修正されるかの例です。

0
John Kane

maven-compiler-pluginはjreではなくjdkを使用します。tools.jarはC:¥Program Files¥Java¥jdk1.6.0¥lib¥tools.jarにあります。jarではなくjdkを使用してプロジェクトJREシステムライブラリを設定する必要があります。これが最も簡単な解決策です。

0
living.li

これはWindows用の解決策です。コンピュータ>システムの詳細設定>詳細設定>環境変数...で、これを追加してくださいシステム変数

enter image description here

0
Basj

私にとってはたらいているもの:私はJava 1.7の古いバージョンをダウンロードしました

私は私がプログラムファイル/ Javaの中に別のJavaを持っていた1.7バージョンをインストールした後、実際にC:/ program files X86/Java BUTから私のJava_HOMEを設定しました。そして現時点で私はtools.jarをここに見つけました。それから私はこの新しい道に変わり、それは働いています

0
Florent Giraud

oSのJREが更新され、環境変数の "パス"に、Java_HOMEを上書きするエントリ ".../Oracle/jer"が追加された可能性があります。 Java_HOMEをそのままにして、「パス」から削除してください。

0
pagurix

Tools.jarをダウンロードした後、エラーメッセージのpathにコピーしました。

C:¥Program Files¥Java¥jdk-11.0.1¥bin>ここに貼り付けるtools.jar

その後、私はSpring Tool Suit 4を再起動しました、そしてすべてがうまくいっていました。私はその問題を解決しようとしていたとき、私は新しい環境変数を作りました。コントロールパネル/システム/ Advenced /環境変数/新しい名前:Java_HOME値:C:\ Program Files\Java\jdk-11.0.1必要です。

0
astatyzm