2017-02-23 72 views
1

我想構建一個JIRA 7插件(郵件處理程序)。在關於如何建立一個官方的教程,他們建立了類這樣的選項對話:JIRA 7+編輯郵件處理程序

public class EditDemoHandlerDetailsWebAction extends AbstractEditHandlerDetailsWebAction {...} 

我的問題是,在此期間,有些事情似乎發生了變化。我的IDE建議要麼使這個類抽象,要麼從超類(AbstractEditHandlerDetailsWebAction)實現更多的方法。

當我實現缺課我不能再建立我的項目,出現此錯誤:

name clash: setErrorMessages(java.util.Collection) in com.example.plugins.jira.demomailhandler.EditDemoHandlerDetailsWebAction and setErrorMessages(java.util.Collection) in webwork.action.ActionSupport have the same erasure, yet neither overrides the other.

有沒有人有什麼線索我得到錯誤的,如何做到這一點在2017年?

非常感謝您提前!

編輯#1 下面就從我的pom.xml使用的版本進行了一些更多的信息:

<properties> 
    <jira.version>7.2.2</jira.version> 
    <amps.version>6.2.11</amps.version> 
    <plugin.testrunner.version>1.2.3</plugin.testrunner.version> 
    <atlassian.spring.scanner.version>1.2.13</atlassian.spring.scanner.version> 
    <!-- This key is used to keep the consistency between the key in atlassian-plugin.xml and the key to generate bundle. --> 
    <atlassian.plugin.key>${project.groupId}.${project.artifactId}</atlassian.plugin.key> 
    <!-- TestKit version 6.x for JIRA 6.x --> 
    <testkit.version>6.3.11</testkit.version> 
</properties> 

和郵件相關的依賴性:

<dependency> 
     <groupId>com.atlassian.jira</groupId> 
     <artifactId>jira-mail-plugin</artifactId> 
     <version>9.0.3</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>com.atlassian.mail</groupId> 
     <artifactId>atlassian-mail</artifactId> 
     <version>2.7.13</version> 
     <scope>provided</scope> 
    </dependency> 
    <dependency> 
     <groupId>javax.mail</groupId> 
     <artifactId>mail</artifactId> 
     <version>1.4.4</version> 
     <scope>provided</scope> 
    </dependency> 
+0

http://stackoverflow.com/a/39753860/2220556? –

+0

哇,謝謝你的鏈接,這看起來真的很有幫助。我已經發現在JIRA 7中使用jira-mail-plugin 9.0.3,並且設法用UserUser替換User,但仍然無法讓我的處理程序正常工作。但是我在外部庫中找到了一些資源,希望能夠解決我的問題。只要我發現:將會發布我的結果:-) –

回答

0

這足以補充這兩種方法:

@Override 
public void addError(String s, String s1) {} 

@Override 
public void addErrorMessage(String s) {} 

我沒有根本不需要添加setErrorMessages方法來使其工作。我的IDE(IntelliJ)仍然在抱怨,並在類名下畫了一條紅線,但現在一切似乎都奏效。