1. มีไฟล์ java 3 อยู่ใน pdfbox
บรรทัดแรกแต่ละไฟล์ คือ package pdfbox;
2. คอมไพล์ไฟล์ ด้วย
โค้ด: เลือกทั้งหมด
"C:\Program Files\Java\jdk-10.0.1\bin\jar.exe" cvfe Convert.jar Convert Convert.class
"C:\Program Files\Java\jdk-10.0.1\bin\jar.exe" cvfe PDFA3Components.jar PDFA3Components PDFA3Components.class
"C:\Program Files\Java\jdk-10.0.1\bin\jar.exe" cvfe ConvertPDFtoA3.jar ConvertPDFtoA3 ConvertPDFtoA3.class
3. สร้างไฟล์ jar รวมกันในไฟล์เดียวจะได้หาคลาสเจอ ด้วย
โค้ด: เลือกทั้งหมด
"C:\Program Files\Java\jdk-10.0.1\bin\jar.exe" cvfe Convert.jar pdfbox.Convert Convert.class PDFA3Components.class
ConvertPDFtoA3.class
4. เรียกไฟล์ jar พร้อมส่งค่าด้วย คำสั่งข้างล่าง แต่ติด error
โค้ด: เลือกทั้งหมด
C:\Users\USER\PycharmProjects\untitled6\venv\PdfAConverter-master\src\main\java\pdfbox>java -jar Convert.jar pdfbox.Convert "../../resources/sample.pdf" "../../resources/ETDA-invoice.xml" "../../resources/sRGB Color Space Profile.icm" "../../../target/success.pdf" "Tax Invoice" "ETDA-invoice.xml" "2.0" "../../resources/xmpTemplate.xml"
Error: Could not find or load main class pdfbox.Convert
Caused by: java.lang.ClassNotFoundException: pdfbox.Convert
สอบถาม gemini แล้ว มีให้เช็คและแก้ไขแบบนี้ ซึ่งทำหมดแล้ว ก็ยังไม่ได้ ติด error เดิม
1. ลบไฟล์ JAR ทั้งหมด:
ไปที่ไดเรกทอรี C:\Users\USER\PycharmProjects\untitled6\venv\PdfAConverter-master\src\main\java\pdfbox
ลบไฟล์ Convert.jar และไฟล์ JAR อื่นๆ ที่อาจมีอยู่ (ถ้ามี)
2. ตรวจสอบ package:
เปิดไฟล์ .java ทั้งหมด ( Convert.java, PDFA3Components.java, ConvertPDFtoA3.java ) ใน text editor
ตรวจสอบให้แน่ใจว่าบรรทัดแรกของแต่ละไฟล์คือ package pdfbox;
3. คอมไพล์ไฟล์ .java ใหม่:
4. สร้างไฟล์ JAR ใหม่:
ใช้คำสั่งต่อไปนี้เพื่อสร้างไฟล์ JAR ที่รวมคลาสทั้งหมด:
"C:\Program Files\Java\jdk-10.0.1\bin\jar.exe" cvfe Convert.jar pdfbox.Convert Convert.class PDFA3Components.class ConvertPDFtoA3.class
5. ตรวจสอบโครงสร้างไฟล์ JAR:
ใช้คำสั่ง jar tvf Convert.jar เพื่อแสดงรายการไฟล์ใน JAR
ตรวจสอบให้แน่ใจว่าคุณเห็น pdfbox/Convert.class, pdfbox/PDFA3Components.class, และ pdfbox/ConvertPDFtoA3.class ในรายการ
6. รันโปรแกรม:
ใช้คำสั่งต่อไปนี้เพื่อรันโปรแกรม:
java -jar Convert.jar pdfbox.Convert "../../resources/sample.pdf" "../../resources/ETDA-invoice.xml" "../../resources/sRGB Color Space Profile.icm" "../../../target/success.pdf" "Tax Invoice" "ETDA-invoice.xml" "2.0" "../../resources/xmpTemplate.xml"