gpt4 book ai didi

java - Eclipse 插件的名称是否无关紧要,只要驻留在plugins/目录中并且只要其内容有效?

转载 作者:行者123 更新时间:2023-11-30 04:19:22 24 4
gpt4 key购买 nike

我一直在做一些实验,似乎至少在某些情况下情况并非如此,也就是说——插件 jar 的命名似乎是有规则的。

如果我的项目同时具有 BundleActivator.start()IStartup.earlyStartup(),则无论 jar 的名称如何,后者似乎都会始终运行,而第一个只会在某些情况下运行。这是为什么?

我快速浏览了 OSGi 4 规范,但找不到任何有关包命名的内容。

附录:我实际上并不是针对 Eclipse 进行开发,而是针对使用大量 Eclipse 插件的 OSGi 应用程序进行开发(包括 p2,如果这与该问题有任何相关的话)。

谢谢

最佳答案

关于 BundleActivator.start()IStartup.earlyStartup(),我已经在您的 previous question 中回答了这个问题,并且您接受了答案。您需要进一步澄清吗?最好要求对原来的问题进行澄清,而不是只是重复它。

关于捆绑 JAR 文件命名,OSGi 不关心 JAR 文件的名称是什么,这就是为什么您在规范中找不到任何有关它的内容。事实上,该包甚至不必位于文件中,您可以通过网络或从任何可以获得 java.io.InputStream 的地方读取它。

但是,Eclipse 是构建在 OSGi 之上的,并且 Eclipse 的各个部分确实期望 bundle JAR 文件的名称与 bundle 的 Bundle-SymbolicName 相匹配。

既然您说您正在开发 OSGi 应用程序而不是 Eclipse 应用程序,那么最好坚持使用纯 OSGi 机制,例如激活器、DS 组件和服务。避开像 IStartup 和整个扩展注册表这样的 Eclipse 主义。

关于java - Eclipse 插件的名称是否无关紧要,只要驻留在plugins/目录中并且只要其内容有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17483528/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com