Jenkins TFS插件抛出NumberFormatException

时间:2014-01-22 08:56:14

标签: tfs jenkins jenkins-plugins

当我使用Jenkin TFS插件从Visual Studio Online进行投票时,我收到以下消息和异常。

我在Ubuntu 12.10上使用TEE-CLC。

  

未找到指定项目和版本组合的历史记录条目。

     

致命:输入字符串:“”

     

java.lang.NumberFormatException:对于输入字符串:“”   at java.lang.NumberFormatException.forInputString(Unknown Source)   在java.lang.Integer.parseInt(未知来源)   在hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:200)   在hudson.plugins.tfs.model.Project.getRemoteChangesetVersion(Project.java:214)   在hudson.plugins.tfs.TeamFoundationServerScm.checkout(TeamFoundationServerScm.java:189)   在hudson.model.AbstractProject.checkout(AbstractProject.java:1415)   在hudson.model.AbstractBuild $ AbstractBuildExecution.defaultCheckout(AbstractBuild.java:652)   在jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)   在hudson.model.AbstractBuild $ AbstractBuildExecution.run(AbstractBuild.java:561)   在hudson.model.Run.execute(Run.java:1678)   在hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)   在hudson.model.ResourceController.execute(ResourceController.java:88)   在hudson.model.Executor.run(Executor.java:231)

有谁知道该怎么办?

3 个答案:

答案 0 :(得分:1)

互联网上的其他地方的答案表明它缺乏特定的工作空间或凭据。

如果之前的命令有效,则很可能是由于缺少修改到本地工作区。这可能是由于用户缺乏对这些权限的读取权限。

对我而言,相当可笑的是,它是由Jenkins主机上的一个不正确的服务器时钟(过去设置)造成的,这导致了之前的“获取”。命令在当前服务器时间之前请求修订;这实际上早于任何代码提交到特定位置。

答案 1 :(得分:1)

您可能需要仔细检查项目路径TFS网址是否存在任何可能的拼写错误。我在路径中遇到了拼写错误,导致了同样的异常。

答案 2 :(得分:0)

我还将看到TFS项目名称中的任何空格如何在日志中出现。在我的日志中的这一行:

[MySlaveJob02] $ tf history "$/PONTIAC RDSDSMyProject_Name" -recursive -stopafter:1 -noprompt -version:D2015-03-07T19:31:42Z -format:brief ********

这个空间是可见的,有时它不工作,这是一个%20