UBUNTU

2012-11-12 27 views
6

'da JAR sınıf yolunu ekleme Bu, genel bir soru olabilir ancak UBUNTU'daki bir JAR dosyası için sınıf yolu ekleyemiyorum.UBUNTU

java burada yer alır: Biliyorum Tüm detayları aşağıda verdik which java komutunun o/p - /usr/bin/java

sudo vim /etc/bash.bashrc 
export CLASSPATH=$CLASSPATH:/downloads/aws-java-sdk-1.3.24/lib/aws-java-sdk-1.3.24.jar 

ps: indirme klasör kökü

sudo vim /etc/environment 
CLASSPATH="/usr/lib/jvm/jdk1.7.0/lib: /downloads/aws-java-sdk-1.3.24/lib/aws-java-sdk-1.3.24.jar:" 
altında doğrudan

Gördüğünüz gibi, bashrc ve etc/environment sınıf yolunu ekledim ... ama hala java için awssdk ile birlikte gelen S3Sample.java'u çalıştırmaya çalışırken bir hata alıyorum. Ben java dosyasını derlemek zaman

, ben aşağıdaki hataları alıyorum:

[email protected]:/downloads/aws-java-sdk-1.3.24/samples/AmazonS3$ javac S3Sample.java 

S3Sample.java:25: error: package com.amazonaws does not exist 
import com.amazonaws.AmazonClientException; 

Şimdi, açıkça JAR dosyası sınıf yoluna eklenmez ve bu yüzden hata almıyorum anlıyoruz. Ayrıca sınıf yol seçeneğiyle javac denedim - ama çalışmıyor :(

PS: JAVA ev doğru ayarlanmış diğer java programlar düzgün çalışması olarak

+0

echo $ CLASSPATH'e sonucu nedir yapabilir? Ve -classpath seçeneği ile koşmayı denediniz mi? – Perception

+0

@Perception bu komutu denedim - javac -cp '.: Abc.jar' test.java ... bu iyi çalışıyor ancak bir tane yerine birden çok JAR dosyası belirtmek istiyorum. Bana bununla yardım edebilir misin? – user1736333

cevap

7

sınıf yolunu ayarlamak için, en içindedir. javac ve java çağrılırken daha iyi vaka -cp veya -classpath argüman kullanmak. size farklı java uygulamaları için farklı Sınıf yolları kullanmak için daha fazla esneklik verir.

-cp ve -classpath argümanlar ile kendi sınıf yolu ayrılmış birden kavanoz ve birden fazla yer içerebilirile(kolon)

javac -cp ".:/somewhere/A.jar:/elsewhere/B.jar" MyClass.java 
java -cp ".:/somewhere/A.jar:/elsewhere/B.jar" MyClass 

örnekte sınıf yolu girişi Geçerli çalışma dizini (.) içermesi sınıf yolunu ve iki kavanoz dosyalarını A.jar ve B.jar ayarlar.

Eğer CLASSPATH ortam değişkeni kullanmak istiyorsanız

export CLASSPATH=".:/somewhere/A.jar:/elsewhere/B.jar" 
javac MyClass.java 
java MyClass