Tôi đã vật lộn với cùng một vấn đề trong một thời gian dài, và cuối cùng vấp phải một giải pháp tốt: "Thư mục được liên kết". Đây là một tính năng Eclipse hoạt động tương tự như các liên kết tượng trưng - nó cho phép bạn ánh xạ một thư mục vật lý duy nhất vào nhiều dự án. Điều tuyệt vời về giải pháp này là nó không yêu cầu bất kỳ bước xây dựng đặc biệt nào, do đó Eclipse có thể tự động triển khai các thay đổi đối với máy chủ Tomcat cục bộ của bạn để thử nghiệm.
Cấu hình của tôi như sau: Tôi có một dự án Eclipse có tên "SharedContent". Bên trong thư mục WebContent, là một thư mục con "shareRoot". Tất cả các tệp có thể sử dụng lại - .jsp, .css, v.v. - được đặt ở đâu đó trong SharedContent/WebContent/shareRoot. Đây là một dự án Web động để tất cả các trình soạn thảo thích hợp được kích hoạt, nhưng tôi chưa bao giờ thực sự xây dựng hoặc triển khai nó.
Trong các dự án khác của tôi, tôi thêm một Thư mục được Liên kết trỏ tới shareRoot. Trong Eclipse 3.6, các bước là:
Trong Package Explorer, bấm chuột phải vào thư mục WebContent của dự án cần bao gồm các tệp có thể tái sử dụng.
Chọn Mới -> Thư mục.
Nhấp vào nút "Nâng cao >>>".
Chọn nút radio "Liên kết đến vị trí thay thế (Thư mục được liên kết)".
Trong hộp văn bản ngay dưới đây, hãy nhấp vào Duyệt qua.
Trong cây nguồn, hãy điều hướng đến SharedContent/WebContent/shareRoot. Sau đó nhấp vào nút OK/Open/Finish cho đến khi tất cả các hộp thoại biến mất.
Nội dung được chia sẻ hiện được ánh xạ vào dự án của bạn. Khó chịu, bạn phải bao gồm "shareRoot /" trong URL khi tham chiếu các tệp này, nhưng bạn có thể làm việc này bằng cách sử dụng bộ lọc viết lại URL ưa thích của mình.
Bạn có thể sử dụng một mẹo tương tự trong cây nguồn Java để ánh xạ các tệp Java vào nhiều dự án. Tôi đã bắt đầu làm điều đó, thay vì xây dựng mã được chia sẻ thành một tệp .jar, bởi vì nó tránh sự cần thiết phải xây dựng lại .jar mỗi khi bạn muốn kiểm tra sự thay đổi trong máy chủ Tomcat cục bộ của mình.
Tôi cũng vậy, nhưng không hề thoải mái chút nào. –