3

我正在尝试运行构建脚本,并且在特定的 svn 任务期间不断收到错误。当我尝试从命令行构建目标时,出现身份验证错误。当我从 flex builder 运行构建时,我收到一条错误消息,提示“请获取更新的 Subversion 客户端”。据我所知,在执行 ant -verbose 时可以在这里看到一个根本问题:

svn_update:
    [echo] Updating the project source...
     [svn] Using javahl
     [svn] <Update> started ...
     [svn] update /Users/dave/Documents/Flex Builder 3/AssetLibrary -r HEAD --force
     [svn] At revision 373.
     [svn] <Update> finished.
     [ant] Exiting /Users/dave/Documents/Flex Builder 3/Simulation/build-template/commonbuild.xml.
     [ant] Exiting /Users/dave/Documents/Flex Builder 3/AssetLibrary/build.xml.
    [echo] Updating DataService Source

...

svn_update:
    [echo] Updating the project source...
     [svn] Using command line
     [svn] <Update> started ...
     [svn] up -r HEAD /Users/dave/Documents/Flex Builder 3/DataService --non-interactive
     [svn] svn: OPTIONS of 'https://svn.example.com/{redacted}': authorization failed: Could not authenticate to server: ignored NTLM challenge, rejected Basic challenge (https://svn.example.com)
     [svn] <Update> failed !
     [ant] Exiting /Users/dave/Documents/Flex Builder 3/Simulation/build-template/commonbuild.xml.
     [ant] Exiting /Users/dave/Documents/Flex Builder 3/DataService/build.xml.
     [ant] Exiting /Users/dave/Documents/Flex Builder 3/Simulation/build.xml.

如您所见,第二个(失败的)svn_update 目标正在使用命令行,而第一个(工作)更新正在使用 javahl。我使用的是svn的默认属性,所以应该默认使用javahl。

我将我的 svnant jar 更新到 1.3.0。

希望对这个有帮助!

戴夫

4

3 回答 3

0

Maybe your command line client is too old, and the server has a versioning constraint on clients allowed to connect? What does svn --version say?

于 2009-12-22T08:04:59.580 回答
0

Could not authenticate to server: ignored NTLM challenge, rejected Basic challenge当我在非交互模式下使用 svn update(例如:)svn update --non-interactive > output.txt并且我的 NT 或 Active Directory 密码已更改时,我通常会收到错误消息。解决此问题的方法是首先运行svn update > output.txt,然后提示您输入密码。提供后,您将获得以下信息

Authentication realm: <http://svnserver:80> SVN Server
Password for 'siacca':
-----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:

   <http://svnserver:80> SVN Server

can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.

You can avoid future appearances of this warning by setting the value
of the 'store-plaintext-passwords' option to either 'yes' or 'no' in
'/cygdrive/u/.subversion/servers'.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes

一旦完成(我和你在一起,我也不喜欢存储未加密的密码,但这是我可以运行自动夜间 svn 更新的唯一方法),你应该能够在非交互模式下运行 svn update .

于 2010-02-17T16:21:24.827 回答
0

引起我注意的第一件事是 javahl 没有在与最后一个目录相同的目录中调用更新:

/Users/david.marr/Documents/Flex Builder 3/AssetLibrary

对比

/Users/david.marr/Documents/Flex Builder 3/DataService

可能存在其他一些 SVN 问题,而您只是收到了误导性的错误消息。另外,您确定 url https://svn.frogdesign.com/ {redacted} 正在被正确解析吗?“{redacted}”对我来说看起来不像 ANT 语法,也不是常规的 url。

于 2009-12-18T21:48:44.543 回答