匿名是正確的。舊的做法是將<component-import>
標籤放入您的atlassian-plugin.xml
中。新方法也建議使用Atlassian Spring Scanner。當您使用atlas-jira-create-plugin
創建附加組件並且您的pom.xml
具有<Atlassian-Plugin-Key>
標記和依賴關係atlassian-spring-scanner-annotation
和atlassian-spring-scanner-runtime
時,那麼您正在使用新方法。
如果您有兩個依賴關係,那麼您使用的是Atlassian Spring Scanner版本1.x.如果你只有atlassian-spring-scanner-annotation
那麼你使用的是2.x版本。
您不必在您的pom.xml
中忽略/註釋Atlassian-Plugin-Key
,並且您不必將component-import
放入您的atlassian-plugin.xml
。
例如,您想要爲您的加載項添加授權,並且需要導入組件PluginLicenseManager
。你只是直奔代碼和你的構造可能是這樣的:
@Autowired
public MyMacro(@ComponentImport PluginLicenseManager licenseManager) {
this.licenseManager = licenseManager;
}
而且你的類是這樣的:
@Scanned
public class MyMacro implements Macro {
如果沒記錯的話,一定要檢查null
因爲有時Atlassian的Spring掃描儀無法注入組件。我認爲在版本1上,編寫一個@EventListener
,它不能注入一個ConversionContext
。但是在編寫宏時,它能夠注入一個ConversionContext
。