3

我正在尝试使用 ant 更新我的代码库。我在 ANT_HOME\lib 目录下放置了 svnant.jar、svnClientAdapter.jar、svnjavahl.jar。我正在使用下面的代码片段,它给出了错误。

问题:无法创建任务或键入 svnSetting
原因:名称未定义。
行动:检查拼写。
行动:检查是否已声明任何自定义任务/类型。
行动:检查任何<presetdef>/<macrodef>声明已经发生。

<path id= "svnant.classpath" >
     <fileset dir= "${antlib.dir}" >
         <include name= "*.jar" />
     </fileset>
</path>
<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" classpathref="svnant.classpath" /> 

<target name="init-svn">
 <svnSetting svnkit="false" javahl="true" username="***" password="****" id="svn.settings" />    
</target>

<target name="update-source" depends="init-svn">
        <svn refid="svn.settings" >
          <update  dir="${basedir}" revision="HEAD" url="${svn.url}"/>
        </svn>
</target>

有人能帮助我吗?

4

1 回答 1

2

我猜您没有在antlib.dir任何地方定义该属性。所以在这里你为taskdef.

实际上,如果您将 jar 放入 ANT_HOME\lib,则不需要为您的taskdef. 做就是了:

<typedef resource="org/tigris/subversion/svnant/svnantlib.xml" />

为了确保 Ant 正确地看到你的罐子,只需运行ant -diagnostics

于 2013-05-22T09:11:11.500 回答