[英]What maven dependencies are needed to get service in non osgi project?
[英]OSGi service class dependencies
我想知道什么是組織捆綁軟件的好方法,以便可以在它們之間共享作為服務參數的類。
我有幾個服務接口,這些接口公開了在綁定之間需要引用的類類型,例如:
public interface DoesThis {
public CustomClassB doSomething(CustomClassA customClassA);
}
根據我的理解, CustomClassA
(如果在與公開服務相同的捆綁軟件中定義)對其他捆綁軟件不可用,那么最好在打包的捆綁軟件中公開類別參考,然后將其導出嗎?
就像一個子問題:服務和程序包導出是否應該協同工作...從我正在閱讀的文檔中尚不清楚這種情況嗎?
謝謝
基本上是。 接口引用的所有類型必須在導出的包中。 有幾種選擇:
如果您考慮一下,則不導出類型是沒有意義的。 例如,如果使用者無法創建要傳入的CustomClassA
類型的對象,或者無法理解返回的CustomClassB
類型,該如何調用doSomething
方法?
關於您的子問題...是的,程序包導出主要是為了支持服務注冊表。 僅當提供者和使用者可以就服務的“合同”達成協議時,服務才能工作,這在Java中表示它們加載了相同的接口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.