ฉันขอแนะนำให้ใช้เครื่องมือสร้างบางประเภท ( AntหรือMaven Ant ได้รับการแนะนำแล้วและเริ่มต้นได้ง่ายกว่า) หรือ IDE ที่จัดการการคอมไพล์ (Eclipse ใช้การคอมไพล์ที่เพิ่มขึ้นพร้อมกับกลยุทธ์การกระทบยอดและคุณไม่จำเป็นต้อง โปรดกดปุ่ม"คอมไพล์" )
ใช้ Javac
หากคุณต้องการทดลองใช้งานสำหรับโปรเจ็กต์ขนาดใหญ่และไม่มีเครื่องมือสร้างที่เหมาะสมอยู่ใกล้ ๆ คุณสามารถใช้เคล็ดลับเล็ก ๆ น้อย ๆ ที่javac
นำเสนอได้ตลอดเวลา: ชื่อคลาสที่จะคอมไพล์สามารถระบุในไฟล์ได้ คุณต้องส่งชื่อไฟล์ไปให้javac
พร้อมกับ@
คำนำหน้า
หากคุณสามารถสร้างรายการ*.java
ไฟล์ทั้งหมดในโปรเจ็กต์ของคุณได้ง่ายๆ:
# Linux / MacOS
$ find -name "*.java" > sources.txt
$ javac @sources.txt
:: Windows
> dir /s /B *.java > sources.txt
> javac @sources.txt
- ข้อดีคือเป็นวิธีแก้ปัญหาที่ง่ายและรวดเร็ว
- ข้อเสียเปรียบคือคุณต้องสร้าง
sources.txt
ไฟล์ใหม่ทุกครั้งที่สร้างซอร์สใหม่หรือเปลี่ยนชื่อไฟล์ที่มีอยู่ซึ่งง่ายต่อการลืม (จึงเกิดข้อผิดพลาดได้ง่าย) และงานที่น่าเบื่อ
ใช้เครื่องมือสร้าง
ในระยะยาวควรใช้เครื่องมือที่ออกแบบมาเพื่อสร้างซอฟต์แวร์ในระยะยาว
ใช้ Ant
หากคุณสร้างbuild.xml
ไฟล์ง่ายๆที่อธิบายวิธีการสร้างซอฟต์แวร์:
<project default="compile">
<target name="compile">
<mkdir dir="bin"/>
<javac srcdir="src" destdir="bin"/>
</target>
</project>
คุณสามารถคอมไพล์ซอฟต์แวร์ทั้งหมดโดยเรียกใช้คำสั่งต่อไปนี้:
$ ant
- ข้อดีคือคุณใช้เครื่องมือสร้างมาตรฐานที่ง่ายต่อการขยาย
- ข้อเสียคือคุณต้องดาวน์โหลดตั้งค่าและเรียนรู้เครื่องมือเพิ่มเติม โปรดทราบว่า IDE ส่วนใหญ่ (เช่น NetBeans และ Eclipse) ให้การสนับสนุนที่ดีเยี่ยมสำหรับการเขียนไฟล์บิลด์ดังนั้นคุณจึงไม่ต้องดาวน์โหลดอะไรในกรณีนี้
ใช้ Maven
Maven ไม่ใช่เรื่องเล็กน้อยในการตั้งค่าและทำงานด้วย แต่การเรียนรู้นั้นคุ้มค่า นี่คือการสอนที่ดีในการเริ่มต้นโครงการได้ภายใน 5 นาที
- ข้อได้เปรียบหลัก (สำหรับฉัน) คือมันจัดการการอ้างอิงด้วยดังนั้นคุณไม่จำเป็นต้องดาวน์โหลดไฟล์ Jar อีกต่อไปและจัดการด้วยมือและฉันพบว่ามันมีประโยชน์มากกว่าสำหรับการสร้างบรรจุภัณฑ์และการทดสอบโครงการขนาดใหญ่
- ข้อเสียเปรียบคือมันมีเส้นโค้งการเรียนรู้ที่สูงชันและหากปลั๊กอิน Maven ต้องการระงับข้อผิดพลาด :-) อีกสิ่งหนึ่งคือเครื่องมือจำนวนมากยังทำงานกับที่เก็บ Maven (เช่นSbtสำหรับ Scala, Ivy for Ant, Graddleสำหรับ Groovy) .
ใช้ IDE
ตอนนี้สิ่งที่สามารถเพิ่มประสิทธิภาพการพัฒนาของคุณ มีทางเลือกโอเพ่นซอร์สอยู่สองสามทาง (เช่นEclipseและNetBeansฉันชอบแบบเดิม) และแม้แต่ทางเลือกในเชิงพาณิชย์ (เช่นIntelliJ ) ซึ่งค่อนข้างเป็นที่นิยมและมีประสิทธิภาพ
พวกเขาสามารถจัดการการสร้างโครงการในพื้นหลังดังนั้นคุณจึงไม่ต้องจัดการกับสิ่งต่างๆในบรรทัดคำสั่งทั้งหมด อย่างไรก็ตามมันจะมีประโยชน์เสมอหากคุณรู้ว่าเกิดอะไรขึ้นในเบื้องหลังเพื่อให้คุณสามารถค้นหาข้อผิดพลาดในบางครั้งเช่นไฟล์ClassNotFoundException
.
หมายเหตุเพิ่มเติม
สำหรับโครงการขนาดใหญ่ขอแนะนำให้ใช้ IDE และเครื่องมือสร้างเสมอ อดีตช่วยเพิ่มประสิทธิภาพการทำงานของคุณในขณะที่อย่างหลังทำให้สามารถใช้ IDE ที่แตกต่างกันกับโปรเจ็กต์ได้ (เช่น Maven สามารถสร้างตัวอธิบายโปรเจ็กต์ Eclipse ด้วยmvn eclipse:eclipse
คำสั่งง่ายๆ) ยิ่งไปกว่านั้นการมีโครงการที่สามารถทดสอบ / สร้างด้วยคำสั่งบรรทัดเดียวนั้นง่ายต่อการแนะนำเพื่อนร่วมงานใหม่และในเซิร์ฟเวอร์การรวมแบบต่อเนื่อง ชิ้นเค้ก :-)