从ant中进行subversion标记时出现NullPointerException

时间:2013-05-28 13:27:32

标签: svn ant jenkins command-line-interface svnkit

我一直在使用以下宏(这里建议为The svn client 'svnkit' is not available)让Jenkins从subversion存储库中的分支创建一个标记,并且它已经正常工作。

<macrodef name="branch2tag">
    <attribute name="src"/>
    <attribute name="dest"/>
    <sequential>
        <java classname="org.tmatesoft.svn.cli.SVN" fork="true" classpathref="test.classpath.dep">
            <arg value="--non-interactive"/>
            <arg line="--username ${user}"/>
            <arg line="--password ${password}"/>
            <arg value="copy"/>
            <arg value="@{src}"/>
            <arg value="@{dest}"/>
            <arg value="-m"/>
            <arg value="&quot;Created by Jenkins&quot;"/>
        </java>
    </sequential>
</macrodef>

几天前,它开始抛出一个异常,我不明白为什么。

 [java] May 27, 2013 11:41:46 AM org.tmatesoft.svn.core.internal.util.DefaultSVNDebugLogger log
 [java] SEVERE: CLI: null
 [java] java.lang.NullPointerException
 [java]     at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.copyWCToRepos(SVNCopyDriver.java:672)
 [java]     at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.setupCopy(SVNCopyDriver.java:621)
 [java]     at org.tmatesoft.svn.core.internal.wc16.SVNCopyClient16.doCopy(SVNCopyClient16.java:440)
 [java]     at org.tmatesoft.svn.core.internal.wc2.old.SvnOldRemoteCopy.run(SvnOldRemoteCopy.java:52)
 [java]     at org.tmatesoft.svn.core.internal.wc2.old.SvnOldRemoteCopy.run(SvnOldRemoteCopy.java:15)
 [java]     at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
 [java]     at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1235)
 [java]     at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:291)
 [java]     at org.tmatesoft.svn.core.wc2.SvnRemoteCopy.run(SvnRemoteCopy.java:227)
 [java]     at org.tmatesoft.svn.core.wc.SVNCopyClient.doCopy(SVNCopyClient.java:480)
 [java]     at org.tmatesoft.svn.cli.svn.SVNCopyCommand.run(SVNCopyCommand.java:99)
 [java]     at org.tmatesoft.svn.cli.AbstractSVNCommandEnvironment.run(AbstractSVNCommandEnvironment.java:142)
 [java]     at org.tmatesoft.svn.cli.AbstractSVNLauncher.run(AbstractSVNLauncher.java:79)
 [java]     at org.tmatesoft.svn.cli.svn.SVN.main(SVN.java:26)
 [java]     at org.tmatesoft.svn.cli.SVN.main(SVN.java:22)
 [java] java.lang.NullPointerException
 [java]     at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.copyWCToRepos(SVNCopyDriver.java:672)
 [java]     at org.tmatesoft.svn.core.internal.wc.SVNCopyDriver.setupCopy(SVNCopyDriver.java:621)
 [java]     at org.tmatesoft.svn.core.internal.wc16.SVNCopyClient16.doCopy(SVNCopyClient16.java:440)
 [java]     at org.tmatesoft.svn.core.internal.wc2.old.SvnOldRemoteCopy.run(SvnOldRemoteCopy.java:52)
 [java]     at org.tmatesoft.svn.core.internal.wc2.old.SvnOldRemoteCopy.run(SvnOldRemoteCopy.java:15)
 [java]     at org.tmatesoft.svn.core.internal.wc2.SvnOperationRunner.run(SvnOperationRunner.java:20)
 [java]     at org.tmatesoft.svn.core.wc2.SvnOperationFactory.run(SvnOperationFactory.java:1235)
 [java]     at org.tmatesoft.svn.core.wc2.SvnOperation.run(SvnOperation.java:291)
 [java]     at org.tmatesoft.svn.core.wc2.SvnRemoteCopy.run(SvnRemoteCopy.java:227)
 [java]     at org.tmatesoft.svn.core.wc.SVNCopyClient.doCopy(SVNCopyClient.java:480)
 [java]     at org.tmatesoft.svn.cli.svn.SVNCopyCommand.run(SVNCopyCommand.java:99)
 [java]     at org.tmatesoft.svn.cli.AbstractSVNCommandEnvironment.run(AbstractSVNCommandEnvironment.java:142)
 [java]     at org.tmatesoft.svn.cli.AbstractSVNLauncher.run(AbstractSVNLauncher.java:79)
 [java]     at org.tmatesoft.svn.cli.svn.SVN.main(SVN.java:26)
 [java]     at org.tmatesoft.svn.cli.SVN.main(SVN.java:22)
 [java] Java Result: 1

我的第一个想法是检查没有对托管Jenkins的服务器进行任何更改,因为它让我觉得svnkit无法找到subversion可执行文件。但Jenkins用户可以使用这些可执行文件。

有人知道这可能是什么原因吗?

0 个答案:

没有答案