【问题标题】:Use packages from plain old Java project in eclipse plugin project在 eclipse 插件项目中使用来自普通旧 Java 项目的包
【发布时间】:2010-03-19 18:39:13
【问题描述】:

我有以下设置:

  • 日食
  • 标准 Java 项目 (A)
  • 一个 Eclipse 插件项目 (B)

如何(如果可能)在 B 中使用来自 A 的包,而无需先从 A 编译 JAR 文件并将其添加到 B?

谢谢!

【问题讨论】:

    标签: java eclipse plugins eclipse-plugin


    【解决方案1】:

    Java 项目 A 需要从 OSGi/Eclipse 中获知,以便在设计时(即在 eclipse 中,包括启动和调试)以及运行时可访问。 正确的做法是让 A 成为一个 OSGI 包,并在 B 中引用它:

    • 选择A,右键,项目,pde工具,转换为插件项目...

    • 然后在 B 中打开 manifest.mf 并添加(com.example.pack 是在 A 中定义的一些要在 B 中使用的包): Import-Package: com.example.pack

    【讨论】:

      【解决方案2】:

      如果你声明:

      • 一个来自 A 的项目
        (“新建”Java 项目/“创建 Java 项目”/“从现有源创建项目”)
      • 第二个项目:
        • 来自 B 的消息来源
        • 项目依赖包括“projectA”

      你会得到你所需要的。
      (仍然需要编译——来自 A 的源代码——但不需要生成 jarA)

      【讨论】:

      • 如果我这样做,当我尝试从项目 A 导出包时,我的 MANIFEST.MF 中会出现“包 'bla' 不存在于这个插件中”错误
      • @Joscha:您是否在您的 plugin.xml 中添加了所需的依赖项和/或(在您的情况下)所需的包(通过 plugin.xml 编辑器页面)?见help.eclipse.org/help33/index.jsp?topic=/…
      • 实际上是的,但这并没有帮助 - 我现在正在使用 eclipse 中的“链接源”机制 - 这似乎工作得很好,但设置非常糟糕......
      • @Joscha:您的意思是“使用链接文件夹”吗? (stackoverflow.com/questions/1470827/…)
      • 我认为它是类似的东西:项目属性-> java 构建路径-> 源-> 按钮“链接源”
      猜你喜欢
      • 2012-04-10
      • 2013-04-05
      • 1970-01-01
      • 2021-01-10
      • 1970-01-01
      • 1970-01-01
      • 2013-09-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多