jira-plugin - atlassian-plugin.xml 包含组件导入的定义。设置 Atlassian-Plugin-Key 时不允许这样做

标签 jira-plugin atlassian-plugin-sdk

这是我运行 atlas-create-jira-plugin 时得到的结果后跟 atlas-create-jira-plugin-module选择选项1: Component Import .

问题是所有教程示例似乎都有由旧 SDK 版本生成的插件描述符(根本不会与较新版本的 SDK/Jira 一起部署),它们不具有 Atlassian-Plugin-Key ,所以我找不到导入组件的方法。

我正在使用 SDK 6.2.3 和 Jira 7.1.1。

任何提示 - 如何解决这个问题?

最佳答案

匿名是正确的。旧的做事方式是把 <component-import>在您的 atlassian-plugin.xml 中添加标签.新方法也是推荐使用 Atlassian Spring Scanner .当您使用 atlas-jira-create-plugin 创建插件时和你的pom.xml<Atlassian-Plugin-Key>标签和依赖 atlassian-spring-scanner-annotationatlassian-spring-scanner-runtime那么你正在使用新的方式。

如果您同时拥有这两个依赖项,则您使用的是 Atlassian Spring Scanner 版本 1.x。如果你只有 atlassian-spring-scanner-annotation那么您使用的是 2.x 版。

您不必省略/注释掉 Atlassian-Plugin-Key在您的 pom.xml而且您不必输入component-import在您的 atlassian-plugin.xml .

例如,您想为您的插件添加许可并需要导入组件 PluginLicenseManager .您只需直接查看代码,您的构造函数可能如下所示:

@Autowired
public MyMacro(@ComponentImport PluginLicenseManager licenseManager) {
    this.licenseManager = licenseManager;
}

你的课是这样的:
@Scanned
public class MyMacro implements Macro {

如果我没记错,请务必检查 null因为有时 Atlassian Spring Scanner 无法注入(inject)组件。我认为在版本 1 中,写一个 @EventListener ,它无法注入(inject) ConversionContext .但是在编写宏时,它能够注入(inject) ConversionContext .

关于jira-plugin - atlassian-plugin.xml 包含组件导入的定义。设置 Atlassian-Plugin-Key 时不允许这样做,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36008446/

相关文章:

Confluence 蓝图替换在具有纯文本正文的宏中不起作用

java - 当 pull 请求 merge 到 bitbucket 时自动更新 npm 版本

java - CreateValidationResults 看不到 customFieldValue

apache-poi - Apache POI 与 Apache Felix 的使用

node.js - Atlassian Connect-Express : JIRA REST API authentication within the JIRA plugin

java - 如何从 jira 插件以编程方式获取发行说明

curl - JIRA REST API - 基本身份验证

eclipse - Atlassian hello world JIRA 构建错误

JIRA - 当我使用 atlas-run 启动 JIRA 实例时无法登录