ฉันจะส่งพารามิเตอร์ไปยังไฟล์ JAR ได้อย่างไรในขณะดำเนินการ
ฉันจะส่งพารามิเตอร์ไปยังไฟล์ JAR ได้อย่างไรในขณะดำเนินการ
คำตอบ:
ในการส่งอาร์กิวเมนต์ไปยังโถ:
java -jar myjar.jar one two
คุณสามารถเข้าถึงได้ในเมธอด main () ของ "Main-Class" (กล่าวถึงในmanifest.mf
ไฟล์ของ JAR)
String one = args[0];
String two = args[1];
java [ตัวเลือก] -jar file.jar [อาร์กิวเมนต์ ... ]
และ
... อาร์กิวเมนต์ที่ไม่ใช่ตัวเลือกหลังจากชื่อคลาสหรือชื่อไฟล์ JAR จะถูกส่งไปยังฟังก์ชันหลัก ...
บางทีคุณอาจต้องใส่อาร์กิวเมนต์ไว้ในเครื่องหมายคำพูดเดี่ยว
คุณสามารถทำได้ด้วยสิ่งนี้ดังนั้นหากไม่มีการระบุอาร์กิวเมนต์ก็จะดำเนินต่อไป:
public static void main(String[] args) {
try {
String one = args[0];
String two = args[1];
}
catch (ArrayIndexOutOfBoundsException e){
System.out.println("ArrayIndexOutOfBoundsException caught");
}
finally {
}
}
จากนั้นเปิดแอปพลิเคชัน:
java -jar myapp.jar arg1 arg2
java [ options ] -jar file.jar [ argument ... ]
หากคุณต้องการส่งผ่านไฟล์คุณสมบัติ log4j ให้ใช้ตัวเลือกด้านล่าง
-Dlog4j.configurationFile=directory/file.xml
java -Dlog4j.configurationFile=directory/file.xml -jar <JAR FILE> [arguments ...]
อาร์กิวเมนต์ Incase มีช่องว่างคุณสามารถส่งผ่านได้ดังที่แสดงด้านล่าง
java -jar myjar.jar 'first argument' 'second argument'