2010-02-14 31 views
6

Tôi có hai cây nguồn trong ứng dụng Java của mình trong Eclipse. Một là "src", và một là "thử nghiệm". Mỗi cái chứa một cây thư mục chứa các tệp .java. Càng xa càng tốt.Đường dẫn lớp riêng biệt cho mã thử nghiệm và mã chính

Tuy nhiên, tôi muốn các lớp trong "kiểm tra" có thể xem các lớp trong "src", nhưng đối với các lớp trong "src" không thể xem các lớp trong "test". Tương tự, tôi muốn bao gồm một số thư viện kiểm tra. Tôi không muốn bất kỳ thư viện nào có sẵn trong cây "chính", vì sợ rằng tôi vô tình sử dụng một thư viện mà không cần suy nghĩ.

Có cách nào dễ dàng để thiết lập điều này trong Eclipse không?

Trả lời

6

Không có cách nào để giải quyết vấn đề này trong Eclipse mà không tách hai cây nguồn thành các dự án riêng biệt (với một dự án tùy thuộc vào dự án khác). Maven có thể xử lý nó ở thời điểm xây dựng.

+2

+1 cho maven. làm cho cuộc sống dễ dàng hơn nhiều. –

+0

Có bất kỳ bất lợi nào đối với giải pháp "dự án riêng biệt" không? – MatrixFrog

+0

Đúng, tôi đã sử dụng Maven cho điều này trước đây. Plugin Maven cho Eclipse là rất tốt về việc chặn các lọ thích hợp từ các cây đúng. Đối với dự án này, mặc dù, tôi không sử dụng Maven, và tôi đã hy vọng có một cách dễ dàng. Đoán rằng không có bất lợi nào đối với một dự án thử nghiệm riêng biệt. Sẽ thử điều đó. –

2

Bạn không cần các dự án riêng biệt nếu bạn sử dụng IntelliJ. Bạn chỉ cần chỉ định các gói ứng dụng và thử nghiệm. Có thể đánh dấu các thư viện như là một phần của ứng dụng và thử nghiệm.

Eclipse nên có tương đương bị chôn vùi dưới tất cả các plugin đó. Nếu không, IntelliJ có một ấn bản cộng đồng ngay bây giờ.

Hoặc chỉ sử dụng Ant. Cá nhân tôi thích Maven hơn. Tôi thấy Maven quá phức tạp cho một công việc đơn giản như vậy.

+1

Với tất cả sự tôn trọng, * "Tôi thấy Maven quá phức tạp cho một công việc đơn giản như vậy." * Chỉ là sai. Có các đường dẫn cây và lớp riêng biệt cho mã và kiểm thử là một tính năng riêng trong Maven, không có gì để làm. Bạn không thể đậu Maven với Ant. –

+0

Maven quá phức tạp nói chung, theo quan điểm của tôi. Với tất cả sự tôn trọng, tôi chỉ muốn sử dụng IntelliJ cho bản thân mình và Ant khi tôi cần phải thực hiện tích hợp liên tục. Maven không liên quan gì đến tôi. – duffymo

+1

Như bạn mong muốn của khóa học :) Nhưng đối với nhu cầu cụ thể này, cách Ant * là * phức tạp hơn, đó là mối quan tâm ban đầu của tôi. –

Các vấn đề liên quan