首页 > 解决方案 > 在 Jira 7.x 插件中使用外部依赖项

问题描述

使用 SDK 6.3.10,我正在尝试为 Jira 7.x 开发一个插件。

此插件应使用名为“maven-handling”的外部 Java 依赖项。我做了以下事情:

首先,我在 POM 中添加了依赖项:

<dependency>
  <groupId>some-company</groupId>
  <artifactId>maven-handling</artifactId>
  <version>1.0.0-SNAPSHOT</version>
</dependency>

然后我将 maven-jira-plugin 中的 import-package 条目更改为:

<Import-Package>org.springframework.osgi.*;resolution:="optional",          
 org.eclipse.gemini.blueprint.*;resolution:="optional",
 some-company.maven_handling*;version="0.0";resolution:="optional", * 
</Import-Package>

我仍然从 some-company.maven_handling 包中获得了我使用的类的 classNotFound 。我错过了什么?

标签: javamavenosgijirajira-plugin

解决方案


假设此插件依赖项是您希望与插件捆绑在一起的东西,而不是您希望访问的 Jira 中已包含的东西:

  1. 您只需<Import-Package>为在别处定义并通过 OSGi 提供给您的插件的包添加条目。由于此依赖项不是 Jira 本身的一部分,并且您将其与插件一起在内部打包,因此您无需执行此操作。只需将其从导入列表中删除即可。我相信这会解决问题。
  2. 您可能还想<scope>compile</scope>在 pom 中显式声明依赖项,以明确您打算将其与插件捆绑在一起(尽管这是默认范围,因此它是可选的)。

推荐阅读