Tools.jar bulunamadı


182

Java'da bir proje yapıyorum.

Bu hatayı aldım:

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

Bir JDK yükledim ve klasör: C:\Program Files\Java\jre6\libsistemimde ancak dosya tools.jarorada değil.


Bence araçlar JRE'ye değil JDK'ya ait. Öyle değil mi? C: \ Program Files \ Java \ jdk1.6.0_24 \ lib
Edwin Dalorzo

4
Bir kenara, şaşırtıcı bulduğum şey, programın aslında nerede göründüğünü söylediğidir. Çok az program bu yararlı ipucunu sağlar.
Peter Flynn

Ayrıca yinelenen soruya bakın: stackoverflow.com/q/9119479/3328979 Yanıtlar burada bir şekilde daha iyi.
Arashsoft

Yanıtlar:


188

Evet, Java Geliştirme Kiti (JDK) yerine Java Çalışma Zamanı Ortamı'nı (JRE) indirip yüklediniz. İkincisi tools.jar, java.exe, javac.exe vb.


7
@olidev şimdi kontrol ama yine de sorunu işaret durduramazsınız! Bu senin cevabın nasıl olabilir? Jdk ve jre yazılımlarını kurduğunuzu söylemiştiniz. Aslında benzer bir sorunla karşılaşıyorum ve hala devam ediyor :-(. Nasıl çalıştığını bilmeniz gerekiyor ??
Paralı Asker

7
Yolunuza JAVA_HOME ve / bin dizinini ekleyin. Bu cevabın iki yaşında olduğunun farkındasınız, değil mi?
duffymo

17
Ubuntu'da: # apt-get install default-jdkve hata kaybolur.
Xavi Montero

2
Anahtar? JDK. Araçları budur. JRE bunu yapmaz.
duffymo

2
Şart değil. Bana kendileri yerine JAVA_HOMEonların jreiçine girmiş gibi görünüyor . jdkjdk
ArtOfWarfare

88

Bunun hala herkes için bir sorun olması durumunda, önceki cevaplar hakkında biraz açıklığa sahibim. Ben sadece JDK yüklü karınca kullanarak aynı sorunu çalıştırıyordu. JDK yükleyici bana böyle bir dizin yapısı verdi:

 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

ve ben karınca koştu zaman, jre7 alt dizini altında tools.jar bulmak şikayet etti. Ben set "JAVA_HOME=C:\Program Files\Java\jdk1.7.0_04"hata ortadan kalkıncaya kadar değildi .


7
bu. Teşekkürler! (çeşitli jre / jdk sürümleri yüklü olanlarımız için)
Daren Thomas

benim için çalıştı ... daha sonra \ bin ile de yol verdi ... sorun oldu
John

Teşekkürler, keşke size 2 şans verebilsem!
Luke

38
  1. Java SDK'sını yükleyin .

  2. JDK konumu değeriyle JAVA_HOME adlı bir Sistem Ortamı Değişkeni ekleyin .
    Denetim Masası \ Sistem ve Güvenlik \ Sistem'e gidin. Gelişmiş Sistem Ayarları, Ortam Değişkenleri, Sistem Değişkenleri, Yeni ... Örnek:
    Değişken Adı: JAVA_HOME
    Değişken Değeri: C: \ Program Files \ Java \ jdk1.7.0_21

  3. Ant komutunu yeniden çalıştırmayı denemeden önce yeni değişkenin etkili olması için CMD pencerenizi kapatın / yeniden açın.


4
JAVA_HOME değişkeni her şeyi düzeltti, çok teşekkürler :)
krinn

4
PATH ile /bin , JAVA_HOME olmadan /bin
Daniel W.

1
Teşekkürler, saatlerce bunun için loooking oldu!
kcho0

1
Windows8.1'de cazibe gibi çalışın
Umar Abbas

ÇALIŞMA GİBİ ÇALIŞIN !! TEŞEKKÜRLER
Heidi


10

JAVA_HOMEÇevresel değişkeninizi işaret edecek şekilde ayarlayın C:\Program Files\Java\jdk1.7.0_02.


10

Linux'taysanız, sisteme java yükleyerek bunu çözebilirsiniz:

sudo apt-get install openjdk-7-jdk openjdk-7-jre

Açıkçası, Java 8 için 'sudo apt-get install openjdk-8-jdk openjdk-8-jre' kullanabilirsiniz
schlenger

7

Hayır, dizin yapınıza göre JDK değil JRE yüklediniz. Bir fark var.

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

Bunun gibi bir şey olmalı:

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

Evet haklısın! ama jre'yi nasıl kaldırabilirim? şimdiden teşekkürler
olidev

Başlat> Denetim Masası> Yazılım (veya Win * sürümüne bağlı olarak benzer)
Sean Patrick Floyd

ancak jre'yi kaldırmak için böyle bir seçenek yoktur. Az önce kontrol ettim!
olidev

@Joesy TAMAM, bulamazsanız, sadece bırakın, kaldırmaya gerek yoktur (disk alanını kurtarmak hariç). Paralel olarak birçok JDK ve / veya JRE kurulu olabilir
Sean Patrick Floyd


5

Aramak için çok fazla zaman harcamayın tools.jar. Böyle bir hata alırsanız üzülmeyin.

Java JDK 1.5'iniz varsa, libklasörünüze gidin ve tools.jarorada bulunmalıdır. Karınca binklasörünüze kopyalayıp yapıştırın , ardından komutu kullanmayı deneyin ant -version.

Beklenen sonucu görmelisiniz.


2
bu yaklaşım tavsiye edilir mi?
S_M

4

Aynı sorunu bir linux makinesinde de yaşadım. İlk başta oldukça sinirliydim, çünkü hem JDK'yı hem de JRE'yi kurdum. Sürüm 1.6, 1.7 ve 1.8'i aynı anda kullanıyorum ve her şeyin düzgün bir şekilde ayarlanması için alternatiflerle çok oynadım.

Sorun çözülmesi oldukça aptalca, ancak sezgiseldi. Doğru JDK'yı kullanırken, jar maven'in şikayet ettiği araçların yoluna dikkat ettim - olmasını bekliyordum

$JAVA_HOME\..\lib\tools.jar

$JAVA_HOMEDeğişken benim doğrudan işaret jdk(klasöre /usr/local/javade doğruydu $PATHgiriş ve alternatif sym link). Aslında java dizininin dışındakilib klasörü arar , çünkü:

$JAVA_HOME\..\lib\tools.jar

çözecek

/usr/local/lib/tools.jar

ve bu geçerli bir konum değil.

Bunu çözmek için, $JAVA_HOMEdeğişken /usr/local/java/jre(JDK yolunun olduğu varsayılarak) bu konuma işaret etmelidir /usr/local/java- aslında jreJDK kurulum dizininin içinde, her JDK ile birlikte gelen klasör vardır . Bu yeni kurulum, maven'in JDK'nın bir parçası olan JRE dizinine bakmasına neden olacaktır:

$JAVA_HOME\..\lib\tools

şimdi çözüyor

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

ve son olarak

/usr/local/java/lib/tools.jar

burası tools.jargerçekten ikamet ediyor.

Yani, siz bile JRE yerine JDK kullanıyorsunuz, $ JAVA_HOME'un JRE'yi göstermesi gerekiyor. Unutmayın, işletim sistemi alternatifi hala JDK'ya başvurmalıdır.


1
Aynı sorunu windows ile aldım, seni kullanmak şekilde benim sorunumu çözdü.
Yigang Wu

Bütün bunları denedim ve hala tools.jar ile sorunu olsun. Randoop çabaya değer mi? Anlamý iyi birim testleri üretiyor mu? Bunun sinir bozucu kısmı, Windows kutumdaki HER diğer java programının iyi çalıştığıdır.
Bay Smith

@MrSmith, Randoop'un hatayı aldığınızda aradığı yol nedir. Belki Randoop'un JRE'nin nerede olduğunu söyleyen kendi env ayarı vardır? Ayrıca, env değişkenlerinizi değiştirdikten sonra kabuk pencerelerinizi (kabuktan çalıştırılıyorsa) yeniden açtınız mı?
Ivaylo Slavov

3

java'nızı kurduğunuz jdk yolunuza gidin

Örneğin, benim bilgisayarımda JDK aşağıdaki yolda yüklü

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

Sonra lib klasörüne gidin, örneğin "C: \ Program Files \ Java \ jdk1.7.0_17 \ lib"

lib dizininde tool.jar dosyası var

Bu dosyayı kopyalayın ve örneğin jre7 dizininin lib forlder dosyasında geçirin.

"C: \ Program Dosyaları \ Java \ jre7 \ lib"


2

Hatta Java JDK yükleme ve seti sonrasında aynı problem vardı JAVA_HOMEiçin ..\jdk1.6.0_45\binklasör.

Ant hala bulmaya çalışıyor tools.jariçinde C:\Program Files\Java\jre6\libklasöründe. Ortam değişkeni
ekleyerek ve klasörde JAVACMDyolunu ayarlayarak düzelttim . Benim durumumdajava.exejdk
C:\Program Files\Java\jdk1.6.0_45\bin\java.exe


2

Ubuntu'da benzer bir sorunla karşılaşabilirsiniz:

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

Sorun düzgün ayarlanmamış JAVA_HOME ile ilgili.

Java8 kullanan Ubuntu 14.04 x64'te:

sudo apt-get install openjdk-8-jdk openjdk-8-jre
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

2

aşağıdaki gibi çalıştırmadan önce JAVA_HOME değişkeni ayarlanarak Windows işletim sisteminde benimle çözüldü:

set JAVA_HOME = C: \ Program Dosyaları \ Java \ jdk1.8.0_111


Bunu zorlamak zorunda kaldım. Ant 10+, bilinmeyen bir değişkente JDK'yı arıyor. JDK'nın nereden geldiğini bulamadım, ama komut satırında ve JAVA HOME'u zorladığında işe yaradı.
Cummings

2

Birçok kişinin belirttiği gibi, tools.jar dosyası için JDK yerine JRE'nize baktığınız anlaşılıyor.

Ayrıca, JDK'nın son sürümlerinde, daha fazla tools.jar dosyası olmadığını belirtmek isterim. Bugün itibariyle en son JDK'yı indirdim (JDK sürüm 12) ve herhangi bir tools.jar bulamadım. Tools.jar dosyasını almak için https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html buradan JDK sürüm 8'i (1.8.0) indirmek zorunda kaldım . Bu sürümü indirdim, tools.jar dosyasını aldım ve son sürümümün lib klasörüne koydum.


1

PATH değişkeninize hem% JAVA_HOME% hem de% JAVA_HOME% / bin yollarının eklendiğinden emin olun.

Kopyalama araçları ile ilgili tüm cevaplar. Jar en iyi ihtimalle kötü bir fikirdir.

IDE'nizin bu kavanozları tasarlandığı ve tasarlandığı şekilde bulabildiğinden emin olun.


1

Tutulma penceresinde> tercihler> Java> Yüklü JRE'de, dizini jdk 1.7'deki jre dizinine işaret ettim ve benim için çalıştım, örneğin C: \ Program Files \ Java \ jdk1.7.0_71 \ jre


1

Benim JDK_path ( C:\Program Files\Java\jdk1.7.0_79) benim JAVA_HOMEve ayrıca JDK_path \ bin benim PATH. Ama yine de karıncalarım JDK yerine JRE kullanıyordu.

Sorun C:\ProgramData\Oracle\Java\javapathbenim PATHdeğişken JDK_path önce vardı . JDK_yolumu kehanetten önce taşıdım ve sorun çözüldü.


1

Bu sorunu çözme Tools.jar dosyasını C: \ Program Files \ Java \ jre1.8.0_112 \ lib'den C: \ Program Files \ Java \ jdk1.8.0_112 \ lib'den kopyaladım, böylece iki araçım var. bir yerine dosyalar ve sorun kayboldu.


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

jdk yüklediyseniz

..Java/jdkx.x.x

klasör orada olmalıdır, bu yüzden onu durdurun ve tam yol verin

C:\Program Files\Java\jdk1.6.0\lib\tools.jar

0

Sınıf yolunuzun doğru ayarlandığından ve yüklediğiniz JDK'nın doğru sürümünü gösterdiğinden emin olun. Ayrıca, Open JDK kullanıyor musunuz? Açık JDK'dan Suns JDK'ya geçmeye çalıştıktan sonra bu sorunu yaşadım. Bu , sorunun nasıl çözülebileceğine bir örnektir.


0

maven-compiler-plugin jre değil jdk kullanın, tools.jar C: \ Program Files \ Java \ jdk1.6.0 \ lib \ tools.jar dizinindedir. JRE System Libary projesini jar yerine jdk ile yapılandırmalısınız. Bu en basit çözüm.


0
  • Karınca dosyanızı sağ tıklayın
  • "Farklı çalıştır" a gidin ve ardından "Ant Build ..."
  • "JRE" sekmesine gidin
  • JRE değil bir JDK seçin

0

Benim için ne işe yarıyor: Java 1.7'nin eski bir sürümünü indirdim

Aslında CAVA_HOME benim C: / program dosyaları X86 / Java ayarlayın ama 1.7 sürümünü yükledikten sonra program dosyaları / Java başka bir Java vardı. Ve şu anda tools.jar dosyasını buldum. Sonra bu yeni yol için değiştim ve işe yarıyor


0

Aynı hatayla da karşılaşıyordum. Bu, Java_Home yolu C: \ Program Files \ Java \ jdk1.8.0_121 olarak ayarlandıktan sonra kaldırıldı. Lütfen sistem yol değişkeninde% JAVA_HOME% \ bin tanımladıktan sonra bin'in yola dahil olmadığından ve jdk1.8.0_121'den sonra eğik çizgi olmadığından emin olun.


0

RHEL ortamındaysanız tools.jar içeren paket adı "openjdk-devel" ile biter.


0

Bu Windows için bir çözümdür: Bilgisayar> Gelişmiş sistem ayarları> Gelişmiş> Ortam değişkenleri ... 'de , Sistem değişkenlerine ekleyin :

resim açıklamasını buraya girin


0

Tools.jar'ı indirdim ve bundan sonra hata mesajındaki yola kopyaladım.

C: \ Program Dosyaları \ Java \ jdk-11.0.1 \ bin> buraya yapıştır tools.jar

Bundan sonra Spring Tool Suit 4'ü yeniden başlattım ve her şey çalışıyordu. Bu sorunu düzeltmeye çalışırken yeni çevresel değişken yaptım: Denetim Masası / Sistem / Gelişmiş / Çevre değişkenleri / yeni Ad: JAVA_HOME Değer: C: \ Program Files \ Java \ jdk-11.0.1 Ama bilmiyorum gerekli.


0

belki işletim sistemindeki JRE'leri güncellediniz ve eklenti, ortam değişkenlerinin "yoluna" JAVA_HOME'unuzun üzerine yazan bir "... / Oracle / jer" girdisi ekledi. JAVA_HOME 'u bırakarak "yol" dan kaldırmayı deneyin.


0

Yardımcı olur, benim için sorun benim PATH ortam değişkeni javaw çalıştırılabilir içeren bir yere işaret 2 girdim vardı.

Değişkeni, "% JAVA_HOME% \ bin" java çalıştırılabilir dosyaları içeren bir konuma başvuran tek girdi olduğundan emin olmak için temizledim.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.