คำสั่ง Java และ Javac
-classpath ตัวเลือกในบรรทัดคำสั่ง Javac และ Java
นี่เป็นคำถามพื้นฐานมาก แต่เนื่องจากพวกเขาใช้เครื่องมือ IDE ที่มีอยู่โดยทั่วไปเพื่อพัฒนาโปรแกรม Java มีเพียงไม่กี่คนที่ตระหนักถึงสิ่งนี้
Javac
-classpath ตั้งค่าเส้นทางเพื่อค้นหาคลาสซึ่งสามารถเป็นไดเรกทอรีไฟล์ JAR หรือไฟล์ ZIP (รวมไฟล์คลาสทั้งหมด) ซึ่งจะเขียนทับการตั้งค่าทั้งหมดใน ClassPath
-SourcePath ตั้งค่าเส้นทางเพื่อค้นหาไฟล์ Java ที่จำเป็นในการรวบรวมซึ่งสามารถเป็นไดเรกทอรีไฟล์ JAR หรือไฟล์ ZIP (รวมไฟล์ JAVA ทั้งหมดไว้)
ดังนั้นบรรทัดคำสั่ง Javac ที่สมบูรณ์ควรมีลักษณะเช่นนี้
สมมติว่า abc.java อยู่ในเส้นทาง C:/src และในไดเรกทอรีใด ๆ คำสั่งต่อไปนี้สามารถดำเนินการเพื่อรวบรวม
javac -classpath C:/คลาส; C: /jar/abc.jar; c: /zip/abc.zip -sourcepath C:/แหล่งที่มา/โครงการ 1/src; c:/source/project2 /lib/src.jar;c:/source/project3/lib/src.
หมายความว่าต้องใช้ไฟล์คลาสด้านล่าง C:/การจัดประเภทไฟล์คลาสภายใน C: /jar/abc.jar ไฟล์คลาสภายใน C:/ZIP/ABC.ZIP ยังต้องการไฟล์ต้นทางด้านล่าง C:/Source/Source/SRC, ไฟล์ต้นฉบับภายใน C:/Source/Project2 /lib/src.jar, ไฟล์แหล่งที่มา
หมายเหตุ: JAR จะไม่มีการเปลี่ยนแปลงไฟล์ต้นฉบับใน ZIP และไฟล์ต้นฉบับในไดเรกทอรีอาจถูกรวมใหม่
ชวา
-classPath ตั้งค่าเส้นทางของคลาสที่จะค้นหาซึ่งสามารถเป็นไดเรกทอรีไฟล์ jar หรือไฟล์ zip (รวมไฟล์คลาสทั้งหมด) ซึ่งจะเขียนทับการตั้งค่าคลาส PATH ทั้งหมด
เนื่องจากคลาสที่จะดำเนินการยังเป็นส่วนหนึ่งของคลาสที่จะค้นหาเส้นทางของคลาสนี้จะต้องถูกวางไว้ในการตั้งค่า -classpath
มันเป็นที่ประจักษ์ว่าเมื่อดำเนินการ Java ในเส้นทางของคลาสที่จะดำเนินการคุณต้องเพิ่ม dot (.) เพื่อระบุว่าควรค้นหาไดเรกทอรีนี้ด้วย
สมมติว่า abc.class อยู่ในเส้นทาง C:/src
คำสั่งต่อไปนี้สามารถดำเนินการได้ในเส้นทางใด ๆ
java -classpath C:/คลาส; C: /jar/abc.jar; c:/zip/abc.zip; c:/src abc
คำถาม: ถ้า main.class เป็นของ c:/jar/abc.jar และอยู่ในแพ็คเกจ com.cnblogs.jeffchen แล้วเรียกใช้ java -classpath c:/คลาส; c: /jar/abc.jar; และแพ็คเกจขวดอื่น ๆ ก็มี com.cnblogs.jeffchen? ความผิดพลาด?
ภายใต้ Windows
ตัวแยกของพา ธ ไฟล์เป็น backslash/
ตัวแยกของรายการไฟล์คลาสหรือ Java เป็นเครื่องหมายอัฒภาค
ตัวคั่นบิตสแลชของเส้นทางไฟล์ใน Linux/
ตัวคั่นของรายการไฟล์คลาสหรือ Java เป็นลำไส้ใหญ่:
ตัวอย่างของการรวบรวมและรันภายใต้ Linux
/usr/local/java/bin/javac -classpath /tmp/javatest/lib/mail-1.3.3.jar -d/tmp/javatest/bin//tmp/javatest/src/jp/co/realseed/capability.java/usrocal/local/local/local /tmp/javatest/lib/mail-1.3.3.jar:/tmp/javatest/bin/ jp.co.realseed.capability
ขอบคุณสำหรับการอ่านฉันหวังว่ามันจะช่วยคุณได้ ขอบคุณสำหรับการสนับสนุนเว็บไซต์นี้!