Tôi cũng sẽ đề xuất sử dụng một số loại công cụ xây dựng ( Ant hoặc Maven , Ant đã được đề xuất và dễ bắt đầu hơn) hoặc một IDE xử lý việc biên dịch (Eclipse sử dụng biên dịch gia tăng với chiến lược đối chiếu và thậm chí bạn không phải quan tâm để nhấn bất kỳ nút "Biên dịch" ).
Sử dụng Javac
Nếu bạn cần thử một cái gì đó cho một dự án lớn hơn và không có bất kỳ công cụ xây dựng phù hợp nào gần đó, bạn luôn có thể sử dụng một mẹo nhỏ javac
cung cấp: tên lớp để biên dịch có thể được chỉ định trong một tệp. Bạn chỉ cần chuyển tên của tệp javac
với @
tiền tố.
Nếu bạn có thể tạo một danh sách tất cả các *.java
tệp trong dự án của mình, thật dễ dàng:
# Linux / MacOS
$ find -name "*.java" > sources.txt
$ javac @sources.txt
:: Windows
> dir /s /B *.java > sources.txt
> javac @sources.txt
- Ưu điểm là một giải pháp nhanh chóng và dễ dàng.
- Hạn chế là bạn phải tạo lại
sources.txt
tệp mỗi khi bạn tạo nguồn mới hoặc đổi tên một tệp hiện có, đây là một nhiệm vụ dễ quên (do đó dễ bị lỗi) và nhiệm vụ mệt mỏi.
Sử dụng công cụ xây dựng
Về lâu dài, tốt hơn là sử dụng một công cụ được thiết kế để xây dựng phần mềm.
Sử dụng kiến
Nếu bạn tạo một build.xml
tệp đơn giản mô tả cách xây dựng phần mềm:
<project default="compile">
<target name="compile">
<mkdir dir="bin"/>
<javac srcdir="src" destdir="bin"/>
</target>
</project>
bạn có thể biên dịch toàn bộ phần mềm bằng cách chạy lệnh sau:
$ ant
- Ưu điểm là bạn đang sử dụng một công cụ xây dựng tiêu chuẩn dễ dàng mở rộng.
- Hạn chế là bạn phải tải xuống, thiết lập và tìm hiểu một công cụ bổ sung. Lưu ý rằng hầu hết các IDE (như NetBeans và Eclipse) cung cấp hỗ trợ tuyệt vời cho việc viết các tệp xây dựng để bạn không phải tải xuống bất cứ thứ gì trong trường hợp này.
Sử dụng Maven
Maven không phải là tầm thường để thiết lập và làm việc cùng, nhưng học nó sẽ trả tiền rất tốt. Đây là một hướng dẫn tuyệt vời để bắt đầu một dự án trong vòng 5 phút .
- Ưu điểm chính của nó (đối với tôi) là nó cũng xử lý các phụ thuộc, vì vậy bạn sẽ không cần tải xuống bất kỳ tệp Jar nào nữa và quản lý chúng bằng tay và tôi thấy nó hữu ích hơn cho việc xây dựng, đóng gói và thử nghiệm các dự án lớn hơn.
- Hạn chế là nó có đường cong học tập dốc và nếu các plugin Maven muốn khắc phục lỗi :-) Một điều nữa là khá nhiều công cụ cũng hoạt động với kho lưu trữ của Maven (như Sbt cho Scala, Ivy cho Ant, Graddle cho Groovy) .
Sử dụng IDE
Bây giờ những gì có thể tăng năng suất phát triển của bạn. Có một vài lựa chọn thay thế nguồn mở (như Eclipse và NetBeans , tôi thích cái trước) và thậm chí cả cái thương mại (như IntelliJ ) khá phổ biến và mạnh mẽ.
Họ có thể quản lý việc xây dựng dự án trong nền để bạn không phải đối phó với tất cả các công cụ dòng lệnh. Tuy nhiên, nó luôn có ích nếu bạn biết những gì thực sự xảy ra trong nền để bạn có thể tìm ra các lỗi thỉnh thoảng nhưClassNotFoundException
.
Thêm một lưu ý
Đối với các dự án lớn hơn, luôn luôn nên sử dụng IDE và công cụ xây dựng. Cái trước giúp tăng năng suất của bạn, trong khi cái sau cho phép sử dụng các IDE khác nhau với dự án (ví dụ, Maven có thể tạo các mô tả dự án Eclipse bằng một mvn eclipse:eclipse
lệnh đơn giản ). Hơn nữa, có một dự án có thể được kiểm tra / xây dựng bằng một dòng lệnh đơn giản để dễ dàng giới thiệu với các đồng nghiệp mới và vào một máy chủ tích hợp liên tục chẳng hạn. Miếng bánh :-)