【发布时间】:2014-04-21 17:50:00
【问题描述】:
我们使用 eclipse 和 m2e 来处理基于 tycho 的插件。 我们的问题是没有附加依赖的来源:
有没有办法让 PDE/m2e 自动下载源并将它们附加到依赖项?
【问题讨论】:
标签: eclipse m2eclipse eclipse-plugin eclipse-pde
我们使用 eclipse 和 m2e 来处理基于 tycho 的插件。 我们的问题是没有附加依赖的来源:
有没有办法让 PDE/m2e 自动下载源并将它们附加到依赖项?
【问题讨论】:
标签: eclipse m2eclipse eclipse-plugin eclipse-pde
您可以尝试安装这个pde.source.lookup 插件,它将在您安装的 Eclipse 的可用 p2 存储库中寻找匹配的源包,就像 m2e 对 Maven 依赖项所做的那样。
如果源 jar 存在于 p2 存储库中并且它不适合您(确实应该),请向其 issue tracker 打开一个错误。
现在,如果这不起作用,即 jar 不是来自 p2 存储库,另一种选择是安装 JBoss Tools' Maven source lookup feature,这与 m2e 的机制非常相似,但更健壮和更完整,因为它将根据您的 jar 的 SHA1 校验和在 Maven Central 和不同的 Nexus 存储库管理器中查找源。它的缺点是它会降低 Eclipse 中你不一定需要的一堆依赖项(JBoss 服务器的东西)
【讨论】:
当 PDE 创建插件依赖类路径容器时,会根据 org.eclipse.pde.internal.core.SourceLocationManager 已知的内容添加源附件。虽然仍然支持旧的源模型(扩展点),但现在通常通过源包交付源。源包将有一个清单条目,描述它提供源的内容。
Eclipse-SourceBundle: org.apache.ant;version="1.9.2.v201307241445";roo
ts:="libsrc"
如果源包可用于您需要的源,您可以将该源包添加到您的目标平台,PDE 将在创建类路径容器时附加源。
或者,您可以临时将源 zip/文件夹附加到条目。
PDE 不提供搜索源的服务。另一个选项可能是“将工件添加到目标平台”对话框 (Ctrl+Alt+Shift+A),它可以在已知的 p2 存储库中搜索所需的源包并将其添加到目标平台。
【讨论】: