Tôi có một ứng dụng bảng điều khiển Java mà tôi đã sẵn sàng triển khai trên một máy chủ Unix. Tôi đang viết một kịch bản lệnh shell để chạy ứng dụng.Cấu trúc thư mục triển khai tốt cho các ứng dụng giao diện điều khiển java
Tôi định đặt kịch bản shell vào một thư mục, jar ứng dụng và các lọ phụ thuộc (mùa xuân, v.v.) vào một thư mục và tệp thuộc tính khác (những tệp cần được duy trì 'sống') trong một thư mục riêng biệt . Sau đó tôi sẽ có kịch bản shell của tôi lặp qua các tệp trong thư mục 'jars' và 'properties', thêm chúng vào classpath, trước khi cuối cùng gọi java ...
Đây có phải là cấu trúc triển khai 'tốt' không? Có bất kỳ hướng dẫn nào về cách sắp xếp tệp để tối đa hóa khả năng bảo trì và tính ổn định không? Có cách nào rõ ràng 'sai' để làm điều này tốt nhất nên tránh?
Tôi nên thêm điều đó, cho một dự án trước, tôi đặt tất cả các kịch bản lệnh shell (bắt đầu quá trình java và các tập lệnh không) vào thư mục tập lệnh, ứng dụng của tôi được đưa vào thư mục với các thư viện trong thư viện thư mục con và tài nguyên bên ngoài vào một thư mục con config. Sau đó tôi đã viết một tập lệnh tải tất cả các tệp một cách rõ ràng. Nó được tạo ra từ lâu để viết và cần được duy trì bất cứ khi nào tôi nâng cấp một thư viện jar. Lần này tôi muốn làm tốt hơn. Ngoài ra, nó cảm thấy không cần thiết để tách JAR ứng dụng của tôi khỏi các thư viện.
Sử dụng Maven cho việc này. – djechlin
Maven có thể tạo tệp kê khai cho tệp jar của bạn với tham chiếu đến các thư viện của bạn, sau đó java sẽ tự tìm thấy các tệp đó. Cũng phụ thuộc vào cách bạn "nhìn" cho các tập tin thuộc tính bạn có thể lấy đi với một mục nhập classpath duy nhất cho những người.Công việc viết kịch bản lệnh shell sau đó sẽ giảm đi nhiều. – Konstantin
Cảm ơn. Tôi sẽ điều tra bằng cách sử dụng maven-jar-pluging để giảm bớt khối lượng công việc của tôi. Tôi đã quên rằng các tệp kê khai có thể làm điều này. –