2012-04-10 7 views
22

Tôi có Project1 và Project2. Project1 phụ thuộc vào Project2. Tôi cảm thấy mệt mỏi khi mỗi lần tôi thực hiện một số thay đổi mã trong Project2, tôi phải xuất tệp Project2 JAR và sao chép nó vào thư mục lib của Project1.Cách tham chiếu một dự án Java khác trong Eclipse

Có cách nào để tự động đạt được điều này không? Hoặc, có cách nào khác để cho biết Project1 rằng Project2 có một số thay đổi?

Trong đường dẫn xây dựng của dự án, có một cách để chỉ định tham chiếu đến các dự án khác trong không gian làm việc, nhưng điều này dường như không làm gì cả? Nó thực sự làm gì?

Tôi đã đọc ở đâu đó để có thể sử dụng Thuộc tính triển khai để tự động hóa quy trình này, nhưng tôi không thể tìm thấy nó.

UPDATE: Uh, tôi C phát triển # và có một số kinh nghiệm trong việc phát triển Java (phát triển chủ yếu là Android), tôi có thể đặt câu hỏi ngu ngốc, vì vậy hãy chịu với tôi ...

Project1 là Java tiêu chuẩn Project (Chạy trên máy của khách hàng, sử dụng swing, vv ..). Project2 là Dự án Web động (vì lý do không rõ). Điều duy nhất nó làm là gọi webservice (dự án thứ ba mà tôi không cần phải lo lắng) và chuyển kết quả trở lại Project1. Project2 chứa các tệp webserviceStub.java Axis2 ... Mỗi khi biết và sau đó, tôi phải tạo lại các tệp này sau đó tôi phải xuất tệp JAR và di chuyển nó đến Project1. Project2, mặc dù nó là Web Project, nó thực sự là mã chạy trên máy khách.

Chỉ việc tham chiếu dự án đơn giản trong Đường dẫn xây dựng không hoạt động đối với tôi.

Cảm ơn

+2

"tham chiếu đến các dự án khác trong Không gian làm việc" sẽ hoạt động. – kosa

+0

Bạn cũng có thể đi vào các thuộc tính của dự án và kiểm tra "là Thư viện" và sau đó tham khảo nó giống như bất kỳ thư viện bên ngoài khác trong Project1. – Chris

+0

Vâng, thực hiện nó trong Path xây dựng hoạt động cho tôi. Bạn có thể bỏ lỡ một bước. – adarshr

Trả lời

34

Nhấp chuột phải vào Project1, sau đó nhấp vào Thuộc tính . Trong hộp thoại xuất hiện, chọn Đường dẫn xây dựng Java và sau đó nhấp vào tab Dự án. Ở đó, thêm Project2 vào đường dẫn xây dựng.

Nếu Project1 là một ứng dụng web, bạn cần phải chắc chắn Triển khai hội (giống Thuộc tính UI) của bạn có project2 đó là tốt.

+0

xin vui lòng xem bản cập nhật của tôi ... – bobetko

+1

Hãy thử làm mới cả hai dự án (nhấp chuột phải -> Làm mới) sau khi bạn tạo tệp sơ khai, và xem điều đó có hữu ích không. Ngoài ra, nếu stubs nằm trong một thư mục src riêng biệt (từ thư mục src chính) trong Project2, hãy đảm bảo rằng thư mục cũng được xuất trong tab "Order and Export" của "Java Build Path" cho Project2. – kozyr

+0

Cảm ơn. Làm mới các trick. Bây giờ, câu hỏi là ... khi tôi sẽ triển khai Project1 cho khách hàng, tôi sẽ phải bao gồm tệp JAR của Project2 sau đó? Tại sao lập trình viên ban đầu sẽ lựa chọn sao chép các tệp JAR được tạo ra để tạo tham chiếu dự án? – bobetko

4

Trong Eclipse, khi một dự án Java được xây dựng, mọi tệp .java từ thư mục nguồn được biên dịch và tệp .class được lưu vào thư mục đầu ra. Các tệp không phải java từ thư mục nguồn được sao chép không thay đổi cho hệ thống phân cấp thư mục tương ứng trong thư mục đầu ra.

Khi thêm "dự án tham chiếu" trong một không gian làm việc trong Eclipse qua Java Build Path, tức là thêm Project2-Project1 's xây dựng con đường, những gì bạn đang thực sự làm là nói cho những người xây dựng dự án để sử dụng thư mục đầu ra của Project2 khi xây dựng Project1 (LƯU Ý: không chỉ thư mục đầu ra, mà còn cả thư viện đã xuất).

Vì vậy, nếu câu trả lời từ kozyr không hoạt động cho bạn, hãy kiểm tra cấu hình "thư mục đầu ra" của Project2.

+0

Cảm ơn bạn. Thông tin rất hữu ích. – bobetko