2014-03-26 40 views
2

我正在嘗試使用Rational Team Concert來存儲我們的二進制文件和/或構建工件。我正在運行mvn deploy命令將我的構建工件部署到RTC。雖然它認識到連接拋出我的HTTP狀態代碼:500錯誤。是否有人嘗試使用Mvn Deploy部署到Rational Team Concert

我也檢查過RTC日誌的更多信息,但我沒有看到任何特定的異常。互聯網上的所有示例或文檔都表明,我們必須配置RTC構建引擎來運行構建。

我只想知道是否有人嘗試使用Mvn deploy(不使用RTC cleint)從命令行發佈到RTC?這是可行的嗎?

如果您已經使用maven成功地向RTC發佈了工件,請詳細說明您是如何做到的?

回答

2

我只想知道是否有人嘗試使用Mvn deploy(不使用RTC cleint)從命令行發佈到RTC?

不,RTC不是artifact repository(就像maven回購是)。
它是一個票源系統,加上一個源代碼回購和一個構建引擎前端。

它可以存儲源代碼並使用它們來觸發一個會產生交付的作業(如二進制文件)。
但是,交付物將不得不存儲在其他地方。不在RTC中。

  • RTC有自己的數據庫來存儲一切(門票,來源,構建定義和構建記錄)
  • 一個真正的神器回購(如行家)是共享目錄的簡單集合,其中交割公佈。

您可以輕鬆地從工件回購中刪除工件:cd + rm。
不能輕易刪除源回購相同交付(其中,自然,有沒有挽留你在它記錄歷史)

+0

感謝Von的快速反應。我有別的問題。 我正在使用Rational Asset Manager(RAM)來存儲我構建的二進制文件。有任何使用mvn deploy命令(不使用RTC?)的成功? 我對此感到抱歉。 – neophyte

1

我已經使用RTC的構建引擎與Maven創造文物,在RTC構建結果中得到認可。這不是一個類似maven的存儲庫,而是使用RTC來跟蹤構建工件(用於錯誤報告等)。 (如果你想發佈到一個倉庫,我建議你看看http://www.sonatype.org/nexus/,它允許maven和Eclipse p2倉庫。)

要創建由RTC識別的工件,在我的maven pom.xml中,我添加了一些執行任務來運行RTC發佈任務。您的Maven安裝需要訪問IBM相關的jar包。 (您可以將它們複製到您的Maven庫中。)這裏有一個關於此的討論:https://jazz.net/forum/questions/4936/how-to-publishing-build-results-using-maven

例如,以下內容會將生成的工件鏈接到RTC構建報告。

<plugin> 
    <artifactId>maven-antrun-plugin</artifactId> 
    <version>1.3</version> 
    <executions> 
       <execution> 
        <id>jazz-link-activity</id> 
        <phase>package</phase> 
        <configuration> 
         <tasks name="publish link" if="link"> 
          <property name="buildtoolkitpath" value="${buildtoolkitpath}" /> 
          <property name="buildResultUUID" value="${buildResultUUID}" /> 
          <property name="${repositoryAddress}" value="${repositoryAddress}" /> 
          <property name="user" value="${builderId}" /> 
          <property name="user.password" value="${builderPassword}" /> 
          <property name="label" 
           value="${project.build.finalName}.v${buildNumber}" /> 
          <property name="url" value="http://your-url/" /> 
          <ant antfile="../XXX.parent/antTasks.xml" inheritAll="true" 
           target="linkPublisher" /> 
         </tasks> 
        </configuration> 
        <goals> 
         <goal>run</goal> 
        </goals> 
       </execution> 
    </executions> 

我有一個ant任務(antTasks.xml)的單獨文件,它公開了RTC構建函數。它看起來像這樣:

<project name="JazzTasks"> 
<target name="setPaths" unless="jazzlib.dir"> 
    <property name="jazzlib.dir" value="C:/Program Files/maven" /> 
    <echo message="Jazz maven library path ${jazzlib.dir}" /> 
    <echo message="Jazz buildtoolkit path ${buildtoolkitpath}" /> 
</target> 
<target name="startBuildActivity" depends="init"> 
    <echo message="Starting build activitty" /> 
</target> 
<target name="linkPublisher" unless="publish.skip" depends="init"> 

    <linkPublisher buildResultUUID="${buildResultUUID}" repositoryAddress="${repositoryAddress}" userId="${user}" password="${user.password}" verbose="true" url="${url}" label="${label}" failOnError="false" /> 
</target> 
<target name="linkPublisher" unless="publish.skip" depends="init"> 

    <linkPublisher buildResultUUID="${buildResultUUID}" repositoryAddress="${repositoryAddress}" userId="${user}" password="${user.password}" verbose="true" url="${url}" label="${label}" failOnError="false" /> 
</target> 
     <taskdef name="linkPublisher" classname="com.ibm.team.build.ant.task.LinkPublisherTask" > 
      <classpath> 
       <fileset dir="${buildtoolkitpath}"> 
        <include name="*.jar" /> 
       </fileset> 
      </classpath> 
     </taskdef> 

關於爵士樂的討論。網值得關注。

相關問題