我已阅读 here仔细使用“Import-Package”指令中的可选分辨率,但不明白为什么。另外,可选和根本不指定依赖项之间有什么区别?
最佳答案
如果您根本没有指定 Import-Package,那么即使包可用并由其他包导出,您的包也无法访问该包。
如果您选择导入包,那么您的包可以使用它(如果可用),但该包不可用不会阻止您的包的解析。
您应该避免在包级别的可选依赖项。要么你依赖一个包,要么你不依赖。通常,对可选依赖项的需求表明你的包的一致性很差,即它在一个模块中做了太多不相关的事情。
关于osgi - Import-Package 分辨率 :=optional and no dependency at all 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20352400/