5

Maven を使用して SVN からチェックアウトとさらなる更新を行う方法を誰か教えてもらえますか? maven.apache.org のドキュメントを読みましたが、コマンド ラインでパラメーターを渡さずに scm:checkout と scm:update を使用する方法を理解できないため、これにはあまりにも馬鹿げているようです。私はただ実行するときを意味します:

mvn scm:checkout (or scm:update) clean install 

maven はソースを /target/checkout にチェックアウトし、それを削除します。もちろん、コンパイルするものがないため、空の jar が作成されます。だから私はこのようなものを書く必要があります:

mvn scm:checkout -DconnectionUrl=scm:svn:http://svn.my.dev/scm/repo/trunk/myProject -DcheckoutDirectory=src clean install

でもしたくない!これらのパラメーターを pom.xml 内で設定するにはどうすればよいですか? 現在のディレクトリをcheckoutDirectoryとして設定するにはどうすればよいですか? (おそらく ${project.basedir} として設定できるため、pom.xml に設定しても問題はないはずですが、誰にもわかりません) 私の pom.xml には次の行が含まれています。

...
  <scm>
    <connection>scm:svn:http://svn.my.dev/scm/repo/trunk/myProject</connection>
    <developerConnection>scm:svn:http://svn.my.dev/scm/repo/trunk/myProject</developerConnection>
  </scm>
...
  <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-scm-plugin</artifactId>
        <version>1.7</version>
        <configuration>
      <username>username</username>
          <password>password</password>
        </configuration>
      </plugin>
...

ところで、connection と developerConnection の違いは何ですか。Maven のドキュメントには、developerConnection は...「開発者向けの SCM 接続 URL」とだけ書かれています。これは私にとって非常に驚くべきことです。なぜなら、これはリスやバニーに関係があると思っていたからです。

4

1 に答える 1

4

checkoutDirectoryこのオプションは、maven-scm-plugin の構成に直接追加できます。ファイルがチェックアウトされるscm:updateと、workingDirectoryオプションで使用できます (プラグイン構成でも構成できます)。

<plugin>
  <groupId>org.apache.maven.plugins</groupId>
  <artifactId>maven-scm-plugin</artifactId>
  <version>1.7</version>
  <configuration>
    <username>username</username>
    <password>password</password>
    <checkoutDirectory>${project.basedir}/src</checkoutDirectory>
    <workingDirectory>${project.basedir}/src</workingDirectory>
  </configuration>
</plugin>
于 2012-07-02T20:18:10.233 に答える