获得JIRA链接所需的pom更改



我如何配置我的changes.xml和pom文件,以便在maven站点上链接JIRA问题。我包括maven-changes插件。但是我想看看我们如何在为bugzilla添加以下代码的同时为JIRA添加代码。

JIRAhttps://bugs.abc.corp/enter_bug.cgi?product= $ {project.groupId},组件= $ {project.artifactId}

     <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-changes-plugin</artifactId>
        <version>2.2</version>
        <configuration>
           <issueLinkTemplatePerSystem>
              <bugzilla><![CDATA[http://internal.bugtracker/show_bug.cgi?id=%ISSUE%]]></bugzilla>
              <navigator><![CDATA[http://external.bugtracker/?cr=%ISSUE%]]></navigator>
           </issueLinkTemplatePerSystem>
        </configuration>
        <reportSets>
           <reportSet>
              <reports>
                 <report>changes-report</report>
              </reports>
           </reportSet>
        </reportSets>
     </plugin>
     <plugin>

当然,像Raghuram建议的那样,看看文档是个好主意。JIRA是一个预配置的系统,它的问题标准URL是%URL%/%ISSUE%。

从XML片段中,我了解到您已经在pom文件的报告部分添加了issueLinkTemplatePerSystem配置。我一直在努力解决这个问题,直到我尝试将该配置添加到pluginManagement部分:

<project>
    <!-- ... -->
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-changes-plugin</artifactId>
                    <version>2.9</version>
                    <configuration>
                        <issueLinkTemplatePerSystem>
                            <system1>https://a.b.c/ticket?id=%ISSUE%</system1>
                            <system2>https://foo.bar/baz/%ISSUE%/view</system2>
                        </issueLinkTemplatePerSystem>
                    </configuration>
                </plugin>
                <!-- ... -->
            </plugins>
        </pluginManagement>
        <!-- ... -->
    </build>
    <!-- ... -->
    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-changes-plugin</artifactId>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>changes-report</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
        </plugins>
    </reporting>
    <!-- ... -->
</project>

然后它就像魅力一样工作,能够在changes.xml中使用几个不同的系统(具有不同的模板url)。我没有在文档中找到这个。

提示:尝试添加选项——debug (mvn——debug clean changes:changes-report)来查看插件从配置中获取的ims

也许你应该尝试一下插件使用页面链接到你的问题管理系统一节中记录的步骤。

根据它,从2.4版本开始,这个插件已经预先配置了一些问题跟踪系统,包括jira。引用原文,

如果您在changes.xml文件中使用issue属性,并且具有元素,则报告将包含到问题管理系统中的问题的链接。

这就是我如何让它为bugzilla和jira工作的。所以你只需要再加上一行你可以用url代替变量"%"

<reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-changes-plugin</artifactId>
                <version>2.9</version>
                <configuration>
                    <issueLinkTemplatePerSystem>
                        <jira><![CDATA[%URL%/browse/%ISSUE%]]></jira>
                        <bugzilla><![CDATA[http://bugzill.url/show_bug.cgi?id=%ISSUE%]]></bugzilla>
                    </issueLinkTemplatePerSystem>
                </configuration>
                <reportSets>
                    <reportSet>
                        <reports>
                            <report>changes-report</report>
                        </reports>
                    </reportSet>
                </reportSets>
            </plugin>
        </plugins>
</reporting>

最新更新