【问题标题】:Eclipse keeps losing source location of libraryEclipse 不断丢失库的源位置
【发布时间】:2014-06-15 00:51:02
【问题描述】:

我正在 Eclipse 中进行插件开发。我有一堆项目在他们的依赖项中使用插件,我经常使用这些插件,需要查看它的源代码。此插件在插件依赖项中被引用为 jar。

我的本​​地机器上有源代码,我通过右键单击 > 属性 > 外部位置 > 外部文件夹将其附加到 jar 中,将其放入该位置的路径中。

完成此操作后,我可以在 Eclipse 中访问源代码。但是,如果我关闭 eclipse 并再次打开它,源附件就消失了,我再次看到丑陋的“找不到源”窗口。

谁能告诉我如何解决这个问题?

【问题讨论】:

  • 用户可能与您的“外部文件夹”没有连接。

标签: java eclipse jar eclipse-plugin


【解决方案1】:

将 jar 复制到插件的文件夹中。打开plugin.xml,转到标签Build 并将jar 添加到插件中。检查“二进制构建”区域中的罐子。使用 source-jars 对“Source Build”执行相同的操作。

【讨论】:

  • 我不确定您的建议。我不想手动将 jar 包含到项目中,也不想将其包含在构建中。该jar是我的项目所依赖的插件(我的错,我没有在问题中指定)。
  • @Terry 你不需要。有两种构建方式:二进制和源代码。所以jar有两种:Binary(.class-files)和Source(eclipse使用的.java-files)。
【解决方案2】:

仅适用于非插件 JAR

您可以尝试将插件 JAR 定义为用户库:

  1. 窗口 > 首选项 > Java > 构建路径 > 用户库时间> 使用 New... 创建您的库,添加您的插件二进制 JAR,并将您的源文件夹分配为 Source attachment

  2. 项目 > 构建路径 > 配置构建路径... > > 添加库... > 用户库 > 从第 1 步添加您的库。

插件方式

您应该将您的源文件打包到一个 source 插件中,该插件的MANIFEST.MF

中有以下行
Eclipse-SourceBundle: my.plugin.one;version="1.0.0";roots:="."

例如,如果您的插件是 my.plugin.one_1.0.0.jar,您还应该安装 my.plugin.one.source_1.0.0.jar,并使用指向插件二进制文件的 MANIFEST 行。

更多信息可以在here找到。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-28
    相关资源
    最近更新 更多