2011-12-07 39 views
7

Sử dụng Felix/Equinox, thao tác nào dưới đây?Lệnh OSGi này thực sự làm gì?

osgi:install 
osgi:refresh 
osgi:resolve 
osgi:restart 
osgi:update 

Có sơ đồ trạng thái máy hoặc tài liệu ngắn gọn ở đâu đó không?

Trả lời

16

Tài liệu tốt nhất cho việc này là OSGi Core Specification. Số mục và số trang dưới đây đề cập đến Bản phát hành 4.3 (tháng 4 năm 2011) của thông số kỹ thuật.

osgi:install có nghĩa là cài đặt gói từ một tệp hoặc luồng và bản đồ sẽ được lập bản đồ theo phương pháp BundleContext.installBundle trong API. Tham khảo mục 4.4.3 ở trang 90.

osgi:refresh thực hiện thao tác "gói làm mới", cho phép xuất/nhập lại được sau khi cài đặt hoặc cập nhật bộ nhóm. Ví dụ: các gói hiện được kết nối với một nhà xuất khẩu cụ thể của gói có thể được gửi lại cho gói mới được cài đặt để xuất cùng một gói. Xem phần 7.6.1, trang 148.

osgi:resolve tương tự như làm mới, nhưng nó chỉ kết nối các gói hiện đang ở trạng thái LẮP ĐẶT. I E. nó sẽ không rút lại các dây hiện có thuộc các bó đã có trong RESOLVED sate.

osgi:restart dừng và khởi động lại một gói cụ thể. Điều này không làm cho việc triển khai gói được cập nhật, nó chỉ dừng lại và bắt đầu. Xem phần 4.4.5 trang 91 và 4.4.7 trang 95.

osgi:update yêu cầu cập nhật một gói đơn lẻ (tức là tải lại từ vị trí ban đầu của nó). Điều này có thể liên quan đến việc dừng, giải quyết lại và bắt đầu gói, tùy thuộc vào trạng thái của nó trước khi cập nhật. Xem phần 4.4.9 trang 95.

Sơ đồ trạng thái cho tất cả các tiểu bang bó OSGi là trong phần 4.4.2 (Hình 4.4) trang 90.

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