JAVA_HOME, JDK'yı mı yoksa JRE'yi mi işaret etmeli?


102

Ben işaret JAVA_HOMEetmek C:\Program Files (x86)\Java\jre7. İyi çalışıyor. Daha sonra, karınca fermuarını açtım ve Ant ile ilgili ortam değişkenlerini kurdum, yazdıktan sonra aşağıdaki hata mesajlarını aldım"ant -version"

görüntü

Bu forumu araştırdım. Görünüşe göre bir çözüm, Java'yı JRE yerine JDK'ya yönlendirmektir. Bunun çözüm olup olmayacağından tam olarak emin değilim. Diğer bir deyişle, genel olarak, JAVA_HOME hangisini göstermelidir? JDK veya JRE?

Yanıtlar:


121

Maven veya Ant ile herhangi bir geliştirme veya geliştirme yapıyorsanız, javac(Java Derleyicisi) gibi yardımcı programların bulunduğu JDK'ya (Java Geliştirme Kiti) işaret etmeniz gerekir . Aksi takdirde, JRE'ye (Java Runtime Environment) işaret edebilirsiniz.

JDK, JRE'nin sahip olduğu her şeyi ve daha fazlasını içerir. Yalnızca Java programlarını çalıştırıyorsanız, JRE'yi veya JDK'yı işaret edebilirsiniz.


7
Yani JAVA_HOMEiki şey yapmak için kullanılır: 1: geliştirme araçları için, bulmak javac.exe. 2: geliştirme dışı araçlar için, bulma java.exe. Bu, "tek bir şey için bir aracı" ihlal ediyor gibi görünüyor . Bunun JDK_HOMEyerine kullanılmamalı mı?
Pacerier

4
Bu sitedeki şema, JDK ve JRE arasındaki ilişkiyi göstermektedir. docs.oracle.com/javase/8/docs
andrybak

1
Java yolunun JRE veya JDK olarak ayarlanıp ayarlanmadığını programlı olarak doğrulamak mümkün müdür?
Dinesh Kumar P

9

Basitçe (jdk1.xxx_xx ile değiştirin)

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


6

JAVA_HOME'um JDK'yı gösteriyor. Hala çalışmıyorsa, Java 6 için değil Java 7 için ant indirip indirmediğinizi kontrol edin.


5

Genel olarak, onu JRE'ye mi yoksa JDK'ya mı yönelttiğiniz önemli değildir. Onu kullanan uygulamaya bağlıdır. Ant dokümantasyonu , Ant'ın tüm özelliklerini almak için JDK'yı işaret etmeniz gerektiğini söylüyor .


2

Bir geliştirici olarak, javac kopyalayıcısına vb. erişmek için JAVA_HOME'u jdk'ye yönlendirmelisiniz. Programınızı JRE üzerinde çalışacak şekilde test edebilmeniz iyi olur. Bir uygulama sunucusu kullanıyorsanız, genellikle JRE yerine JDK'ya da ihtiyacınız vardır, ancak bu belirli sunucuya bağlıdır.


2

JDK veya JRE'yi kullanabilirsiniz ancak:

JAVA_HOME, başlatıcı tarafından kullanılacak JDK / JRE'yi bulmak için kullanılır. (Bazı görevler java araçlarını gerektirdiğinden JDK önerilir.)
. ANT_HOME ayarı


0

Basit tutalım. Ayarlara gidin ve "Ortam Değişkenleri" ni arayın. Ortam değişkenleri penceresi açıldığında, YENİ'ye tıklayarak yeni bir SİSTEM değişkeni oluşturun ve ardından JDK'nın kurulum yolunu bulana kadar DİZİNE GÖZ ATIN. JDK, program dosyalarına yüklenmelidir ve bir JAVA klasörü göreceksiniz ve klasörün içinde JDK ve JRE ... Kod yazarsanız, JDK'yı seçmelisiniz !!! JRE'nin yeterli olacağını söyleyen kimseyi dinlemeyin ... HAYIR! O olmaz! Uygun dizin şu şekilde görünmelidir : C: \ Program Files \ Java \ jdk1.8.0_144 , bu kadar basit!


2
@Stephan Mevcut cevaplar zaten sağlamak için zaman ayırdığım bilgileri sağlıyor. Olumsuz oy kullanmak için gerekçeniz bu mu? Bu konuların çoğundaki sorun budur. Birincisi, temel ilkenin yanıtlanmış olması, yanıtın iyi biçimlendirildiği ve hatta yardımcı olduğu anlamına gelmez. Cevabım önceki cevaplarla hiç aynı değil.
Verdiğim
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.