การเพิ่มโฟลเดอร์ไฟล์ jar ลงในพา ธ ของฉัน


10

ฉันมีเครื่องมือจาวาที่ฉันต้องใช้ เครื่องมืออยู่ในโฟลเดอร์ที่เต็มไปด้วยไฟล์ jar ฉันต้องการเพิ่มโฟลเดอร์นี้ในเส้นทางของฉันด้วยเหตุผลที่ชัดเจน แต่หลังจากฉันแก้ไข. bash_profile ของฉันเพื่อรวมโฟลเดอร์ใหม่ในตัวแปร $ PATH และแหล่งที่มามันไม่ทำงาน ฉันลองออกจากระบบและลงชื่อเข้าใช้อีกครั้งและนั่นก็ไม่ได้ผลเช่นกัน ฉันเพิ่งได้รับข้อความข้อผิดพลาด "ไม่สามารถเข้าถึง jarfile .jar"


คุณตรวจสอบแล้วว่าไม่ใช่ปัญหาการอนุญาตหรือไม่
matcheek

คุณจะต้องแก้ตัวความไม่รู้ของฉัน แต่ฉันจะตรวจสอบสิ่งนี้ได้อย่างไร
เดวี่ Kavanagh

คุณอาจต้องการตรวจสอบคำตอบนี้: stackoverflow.com/questions/5569591/…
matcheek

คำตอบ:


5

สำหรับไฟล์ JAR คุณต้องตั้งค่า CLASSPATH ไม่ใช่ตัวแปรสภาพแวดล้อม PATH

หากคุณใช้ BASH มันคือ: export CLASSPATH="$CLASSPATH:<full_path_to_each_jar_files>"

คุณควรเพิ่มในไฟล์.bashrcเว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่

ตัวอย่าง:

export CLASSPATH="$CLASSPATH:$HOME/java/lib/foebar.jar:$HOME/extra/lib/another.jar"

แต่แน่นอนถ้าคุณยังคงเรียกใช้ไฟล์ jar ด้วยคลาส Main คุณต้องใช้พา ธ แบบเต็มสำหรับมัน:

java -jar $HOME/java/lib/main-prog.jar

อย่างไรก็ตามคุณสามารถตั้งค่าการดำเนินการที่ถูกต้องและเรียกใช้:

chmod u+x $HOME/java/lib/main-prog.jar
export PATH=$PATH:$HOME/java/lib
main-prog.jar

แต่คุณต้องดูแลว่า classpath ของคุณถูกต้องและรายการ jar ที่ต้องการทั้งหมด


ฉันลองส่งออก CLASSPATH = $ CLASSPATH: <my_new_path> โดย <my_new_path> ถูกแทนที่ด้วยเส้นทางจริงของโฟลเดอร์ที่มาและยังคงเป็นผลลัพธ์เดียวกัน
Davy Kavanagh

ขออภัยความผิดพลาดของฉันมันไม่ใช่เส้นทาง แต่เป็นไฟล์. jar พร้อมพา ธ เต็มคุณจะอัปเดตคำตอบ
Huygens

นี่หมายความว่าฉันจะต้องเพิ่ม CLASSPATH ซึ่งเป็นรายการใหม่สำหรับไฟล์ jar ทุกไฟล์ ไฟล์ jar เหล่านี้มีประมาณ 80 ไฟล์
Davy Kavanagh

@DavyKavanagh หมายเหตุ: ไม่ต้องเพิ่มตัวแปรสภาพแวดล้อมที่จะเพิ่มไปยัง.bashrc .profileดูทางเลือกของ. bashrc
Gilles 'หยุดความชั่วร้าย'

@DavyKavanagh ขออภัยในความล่าช้านานในการตอบสนอง แต่ใช่นี่หมายถึงการเพิ่มไฟล์ 80 jar ใน classpath
Huygens

2

หากเครื่องมือของคุณเป็นสคริปต์ซึ่งมีคำสั่งเช่นนั้น

 java -jar somejafile.jar

จากนั้นคุณควรแก้ไขเพื่อให้มีเส้นทางที่ถูกต้อง

 java -jar /full/path/to/somefile.jar

ไม่ขอโทษเครื่องมือเหล่านี้เป็นไฟล์ jar ด้วยตัวเอง
Davy Kavanagh
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.