2012-06-13 17 views
6

Unbuntu'da Jikes RVM'yi oluşturduğumda, bu hatayı aldım. Herhangi bir fikir?"Hata: JAVA_HOME doğru tanımlanmadı." Jikes rvm binasında

 
bin/buildit localhost production 
---> Config: production 
/bin/bash --login -c '/bin/bash --login -c " cd /home/jack/Programs/jikesrvm-3.1.2 && export JAVA_HOME=/opt/jdk1.6.0 && ant very-clean -Dhost.name=ia32-linux && ant check-components-properties -Dhost.name=ia32-linux -Dtarget.name=ia32-linux -Dcomponents.cache.dir=/home/jack/.buildit_components_cache && ant -Dtarget.name=ia32-linux -Dconfig.name=production -Dhg.revision= -Dhost.name=ia32-linux -Dcomponents.cache.dir=/home/jack/.buildit_components_cache "' 
Error: JAVA_HOME is not defined correctly. 
    We cannot execute /opt/jdk1.6.0/bin/java 
Wed Jun 13 12:23:37 EDT 2012 
===================== Summary ===================== 
Local : /home/jack/Programs/jikesrvm-3.1.2 
Build : ubuntu:/home/jack/Programs/jikesrvm-3.1.2 
Target : ubuntu:/home/jack/Programs/jikesrvm-3.1.2 
Start : Wed Jun 13 12:23:37 EDT 2012 
Config : production [FAILED Wed Jun 13 12:23:37 EDT 2012] 
=================================================== 

OS:

Linux ubuntu 2.6.32-24-generiC#39-Ubuntu SMP Wed Jul 28 06:07:29 UTC 2010 i686 GNU/Linux

Çevresel Değişkenler: YOL

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/lib/jvm/java-6-sun-1.6.0.22/bin

java_home

/usr/lib/jvm/java-6-sun-1.6.0.22

benyılında java kontroldizini çalışıyor. Çevresel değişkenleri nasıl değiştirdiğim önemli değil, hata "Biz /opt/jdk1.6.0/bin/java'yı çalıştıramayız" diyerek devam etti. Doğru "pozisyonu" değiştirmediğim anlaşılıyor.

Herhangi bir ipucu?

Teşekkürler!

cevap

7

çalıştırmak bu komut: o yola JAVA_HOME ayarlama hangi dosyanın

find . -exec grep "jdk1.6.0" {} \; 

öğrenmek için.

+0

Merhaba Rocky, emrinizi yerine getirdim, şunu elde ettim: global.javahome.ia32-linux =/opt/jdk1.6.0 global.javahome.x86_64-linux =/opt/jdk1.6.0 Fakat bunlar nedir? Onları nasıl değiştirebilirim? Teşekkürler! – JackWM

+0

Maalesef, -l seçeneğini eklemeniz gerekir, böylece tanımlanmış dosyayı görebilirsiniz: bul. -exec grep -l "jdk1.6.0" {} \; Bu dosya adını yazdıracak, daha sonra bu dosyayı düzenleyecektir. –

+0

Onları buluyorum. /bin/buildit.base_config dosyasındalar. Onları gerçek JAVA_HOME'a değiştirdikten sonra, hata ortadan kalkar. Teşekkürler! – JackWM

0

JRE değil, JDK değil. JDK'yi yükleyin ve JAVA_HOME'u işaretleyin.

+0

Bunu nasıl yapacağınıza dair bir örnek verebilir misiniz? –

+0

JDK'yı nasıl yükleyeceğinize bir örnek mi? Sadece depodan al. JAVA_HOME bir değişken olarak kabuk dışa aktarılabilir. –

3

Jikeleri oluştururken, karınca kullanarak veya kullandığınız komutu kullanarak oluşturabilirsiniz. Java_home sorun sorun kullanacağım neden oluyorsa

bin/buildit localhost production -j"path to your jvm directory" 

-Bu "/usr/bin/jvm" mevcuttur.

Başka bir yöntem: JAVA_HOME yolunun özellikle belirtildiği bin/buildit.base_config var. Yani "# Default JAVA_HOME values" altında sen Kullanmak istediğiniz

global.javahome.ppc32-linux=/usr/lib/jvm/java-6-sun-1.6.0.26 
global.javahome.ppc64-linux=/usr/lib/jvm/java-6-sun-1.6.0.26 
global.javahome.ia32-linux=/usr/lib/jvm/java-6-sun-1.6.0.26 
global.javahome.x86_64-linux=/usr/lib/jvm/java-6-sun-1.6.0.26 

seçebilir, örneğin, uygun bir konum değiştirebilir. Eğer mimarinize aşina değilseniz, hepsini değiştirin ve şimdi java yolunuz hakkında endişelenmenize gerek kalmadan açıkça oluşturabilirsiniz. Daha ayrıntılı bilgi için Ben de nedenlerden dolayı çift biri start to fiddle with Jikes

+0

@jackWM: Openjdk 7 ile inşa ederken jikes bugünde bug hata ve 6 sürümü ile çalışma ince, bu yüzden sürüm 6 kullanın. – Rorschach

-1

bu hatayı alabilirsiniz nasıl küçük bir yazı yazdım this blog

kontrol edin. Bunu hemen düzeltmek için lütfen aşağıdaki adımları izleyin:

İlk önce java konumunu bulun.Yüklü Java platformları listesini almak için, terminalden aşağıdaki komutu çalıştırın: Şimdi java_home ve PATH set

$ sudo update-alternatives --config java 

,

$ export JAVA_HOME=<java_home> 

$ export PATH=$JAVA_HOME/jre/bin:$PATH 

sembolik

$ sudo ln -s <java_home>/jre <java_symlink_path> 

biz oluştur Örneğinizi örnek olarak alın:

$ sudo ln -s /usr/lib/jvm/java-6-sun-1.6.0.22/jre /opt/jdk1.6.0 

Yukarıdaki komut, sistemin sorununuzda bulmaya çalıştığı sembolik bağlantı konumunu yaratacaktır.

Son olarak uygulamanızı deneyin.