【问题标题】:Why Plug-in Dependencies are Needed?为什么需要插件依赖?
【发布时间】:2012-01-16 16:55:14
【问题描述】:

您好我正在尝试开发插件项目,我不明白为什么我必须添加插件依赖项,为什么我不能将所需插件的 jar 添加到项目的构建路径中?

【问题讨论】:

    标签: eclipse plugins eclipse-plugin


    【解决方案1】:

    简而言之,因为 OSGi 框架管理插件的生命周期,并在需要时负责加载、启动、停止和卸载插件,所以这个过程除了解决必要的依赖关系之外还有很多工作要做。还涉及扩展和扩展点,允许您公开可用于扩展代码的各种“钩子”。我建议阅读 OSGi 和插件框架。

    【讨论】:

    • 更重要的是,所有依赖项都使用您的 MANIFEST.MF 文件列出。您不必手动使用 Java 构建路径。
    • 除了您有插件实现特定片段的特定情况外,您应该从不使用构建路径。它会根据您的捆绑包依赖项(OSGi Require-Bundle 和 Import-Packages)和捆绑包类路径(OSGi Classpath 标头)自动处理。后者主要用于嵌入式 jar。