gpt4 book ai didi

linux - Linux 下使用 Ant 进行 SVN check out

转载 作者:太空宇宙 更新时间:2023-11-04 11:25:59 25 4
gpt4 key购买 nike

当我在 linux ubuntu 中运行 build.xml 时,应该从 svn check out 项目时出现以下错误:-

svn:

BUILD FAILED
java.net.MalformedURLException: Invalid svn url: svn://xxx-xx-xx-xx-xx.compute-1.amazonaws.com/srv/svn
at org.tigris.subversion.svnclientadapter.SVNUrl.parseUrl(SVNUrl.java:117)
at org.tigris.subversion.svnclientadapter.SVNUrl.<init>(SVNUrl.java:63)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.apache.tools.ant.IntrospectionHelper$11.set(IntrospectionHelper.java:1069)
at org.apache.tools.ant.IntrospectionHelper.setAttribute(IntrospectionHelper.java:388)
at org.apache.tools.ant.RuntimeConfigurable.maybeConfigure(RuntimeConfigurable.java:392)
at org.apache.tools.ant.RuntimeConfigurable.maybeConfigure(RuntimeConfigurable.java:349)
at org.apache.tools.ant.UnknownElement.handleChild(UnknownElement.java:568)
at org.apache.tools.ant.UnknownElement.handleChildren(UnknownElement.java:346)
at org.apache.tools.ant.UnknownElement.configure(UnknownElement.java:198)
at org.apache.tools.ant.UnknownElement.maybeConfigure(UnknownElement.java:160)

实际上 svn 的路径是我从本地盒子连接的。所以我不知道我应该在这里给出什么路径。 svn 在同一个 linux box 中。

我的build.xml所在的目录路径是:-/home/ubuntu/antCheckout而svn所在的路径是:-/srv/svn

我也试过这个路径:- ssh://srv/svn 但异常是一样的。

这是我的 build.xml:-

<?xml version="1.0"?>
<project name="Test" default="Main" basedir=".">
<!-- Sets variables which can be used. -->
<property name="checkout" location="./svncheckout" />
<!-- Define the classpath which includes the jars
that are required for svnant.jar -->
<path id="/usr/local/ant/apache-ant-1.7.1/">
<pathelement location="lib/svnant.jar" />
<pathelement location="lib/svnClientAdapter.jar" />
<pathelement location="lib/svnjavahl.jar" />
<pathelement location="lib/svnkit.jar" />
</path>

<typedef resource="org/tigris/subversion/svnant/svnantlib.xml"
classpathref="/usr/local/ant/apache-ant-1.7.1/" />


<!-- Deletes the existing build, docs and dist directory-->
<target name="clean">
<delete dir="${checkout}" />
</target>

<!-- Creates the build, docs and dist directory-->
<target name="makedir">
<mkdir dir="${checkout}" />
</target>


<!-- Checkout the latest source code of svnant itself-->
<target name="svn">
<svn username="guest" password="">
<checkout url="svn://srv/svn" revision="HEAD" destPath="${checkout}" />
</svn>
</target>

<target name="Main" depends="clean, makedir, svn">
<description>Main target</description>
</target>
</project>

感谢您的帮助。

最佳答案

如果您使用的是 Linux,是否有 Subversion 命令行客户端?

试试这个:

$ svn --version

如果你有 Subversion 命令行客户端,试试这个命令:

$ svn ls svn://svn/srv

看看你得到了什么。我打赌你会得到一个错误告诉你 svn://srv/svn找不到或不是有效的 URL。

这一行:

<checkout url="svn://srv/svn" revision="HEAD" destPath="${checkout}" />

相当于命令行:

$ svn checkout -rHEAD svn://srv/svn .svncheckout

在该命令起作用之前,您必须找到有效的 Subversion 存储库 URL。然后,更改 url <checkout> 中的参数匹配该 URL 的子任务。 Subversion 使用 URL 指向存储库地址。

顺便问一下,这到底是想做什么?为什么要将工作目录 check out 到 .svncheckout目录?这是 Unix 中的隐藏目录。


顺便说一句:svn co svn://127.0.0.1除非程序 snvserve 否则不会工作在本地系统上运行。 svnserve程序

关于linux - Linux 下使用 Ant 进行 SVN check out ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14769088/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com