buildnumber maven插件无法检查svn代码库的最新修订号。pom配置
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>buildnumber-maven-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>create</goal>
</goals>
</execution>
</executions>
<configuration>
<doCheck>false</doCheck>
<doUpdate>true</doUpdate>
<providerImplementations>
<svn>javasvn</svn>
</providerImplementations>
</configuration>
</plugin>
当我在Ubuntu 11.10上运行mvn compile
时,我得到了如下的错误消息
[INFO] --- buildnumber-maven-plugin:1.0:create (default) @ some-module ---
[INFO] Change the default 'svn' provider implementation to 'javasvn'.
[INFO] Checking for local modifications: skipped.
[INFO] SVN update directory: /path/to/my/project/some-module
[ERROR] Provider message:
[ERROR] SVN update failed.
[ERROR] Command output:
[ERROR] svn: Authentication required for '<http://my.svn.host.com:80> Subversion Repository'
同时svn up
工作良好。
但我在Window 7上运行了相同的命令,这个插件可以获得修订号,错误消息不会显示,我使用TortoiseSVN也可以更新模块。
因此,必须为maven scm提供商svnjava插件提供默认配置,以获取subversion存储库的用户名和密码?它在哪里?如何配置?
我已经尝试过mvn compile -Dusername=xxx -Dpassword=yyy
,它可以工作,但用户名和密码参数与我的数据库配置冲突。顺便说一句,.m2目录中的settings.xml文件只有Maven Repository配置。
我在Ubuntu 11.10上使用java 1.6.0-31、maven 3.0.4、TortoiseSvn 1.6.16、svn 1.6.12。
更新事实证明,答案与这个问题有关:SVN赢得了';t缓存凭据,问题已解决。
settings.xml,服务器部分
<server>
<id>...</id>
<username>..</username>
<password>..</password>
</server>
id必须与scm部分中的连接相关