2008-11-20 12 views
26

Bạn khuyến nghị hệ thống nào thực hiện "cập nhật tự động" cho một số ứng dụng java (máy tính để bàn)? Tôi cũng muốn cài đặt và cập nhật module/plugin. Hãy suy nghĩ về Eclipse và Firefox."Cập nhật tự động" cho ứng dụng Java (máy tính để bàn)?

Tôi biết về các công cụ OSGi của RCP của Eclipse và NetBeans RCP có thứ gì đó ở đây. Người ta có phải mua toàn bộ các công cụ RCP tương ứng của họ để sử dụng các mô-đun và hệ thống cập nhật tự động của họ không?

Có các tùy chọn khác không?

Trả lời

18

Bạn đã xem số Java Web Start chưa? Nó kiểm tra các mô-đun cập nhật trên máy chủ và tải xuống chỉ khi được yêu cầu nếu không mọi thứ được lưu trữ cục bộ trên máy khách và bắt đầu từ đó.

+1

AKA "Giao thức khởi chạy mạng Java (JNLP), –

+0

Tôi không hoàn toàn cảm thấy rằng Java Web Start là câu trả lời ở đây. Giả sử đây là một ứng dụng rộng lớn - gần với ứng dụng" vùng chứa "như Eclipse (IDE) , và giống như Firefox là – stolsvik

+0

Tại sao kích thước lại là vấn đề? –

8

Bắt đầu trên web thật tuyệt vời nếu bạn có cập nhật không thường xuyên và băng thông tốt.

Nếu không, bạn cần một thứ khác. Tôi đã làm việc trên một dự án mà chúng tôi đã cập nhật thường xuyên và băng thông khủng khiếp. Chúng tôi đã cuộn máy chủ lớp của riêng mình; mã khởi động sẽ nói chuyện với máy chủ để xem các bản cập nhật có cần thiết trên cơ sở mỗi lớp hay không. Nếu vậy, các lớp đã thay đổi được tải xuống và ứng dụng vẫn tiếp tục như bình thường.

Nó thực sự không phức tạp khủng khiếp, do đó, đừng ngại cuộn của riêng bạn nếu các công cụ hiện tại không hoạt động.

+0

cảnh báo có nghĩa là chỉ những khác biệt cần tải xuống, không phải toàn bộ điều. Nên được tốt ngay cả với băng thông kém. –

+0

@tom, bạn có kinh nghiệm với điều này không? Tôi muốn nghe nếu nó là giá trị nỗ lực. –

+0

davetron, làm cách nào tôi có thể triển khai mã khởi động trong một tệp jar? Quét lớp khác biệt là không có vấn đề, nhưng khởi động là. Tôi không thể ghi đè lên bình đang chạy sau khi tải xuống bản cập nhật. –

9

Tôi tin rằng install4J hiện cung cấp chức năng này như một phần của công cụ xây dựng cài đặt (http://www.ej-technologies.com/products/install4j/overview.html) Chúng tôi muốn kiểm tra xem nó nhưng chưa có cơ hội.

+0

Cảm ơn, điều đó thật thú vị. Có thể sử dụng điều đó cho "vùng chứa chính" và ví dụ: OSGi của Eclipse cho các plugin? – stolsvik

1

Hãy xem Equinox p2, có thể là ý của bạn bằng "công cụ OSGi của Eclipse RCP" ... AFAIK bạn sẽ cần OSGi-ify ứng dụng của bạn để sử dụng p2 (ít nhất có nghĩa là làm cho toàn bộ một gói ứng dụng lớn).