我安装了以下内容;
microsoft visual team foundation server 2012在tfs 2012构建服务器上构建扩展(http://visualstudiogallery.msdn.microsoft.com/45b4e378-5b81-4186-9b7f-21cc5c2f743d)
Java Dev Kit 6 update 45
Maven 3.1.1
2012年服务器配置:
Windows 2012 Standart 64位计算机。我们使用NTLM身份验证和代理。
我定义了以下配置:
环境设置:
JAVA_HOME C:\Program Files\Java\jdk1.6.0_45
M2 %M2_HOME%\bin
M2_HOME C:\Program Files\Apache Software Foundation\apache-maven-3.1.1
路径:
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Microsoft\Web Platform Installer\;C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\;C:\Program Files\Microsoft SQL Server\110\Tools\Binn\;%TFSPowerToolDir%;%BPADir%;%M2%;%JAVA_HOME%\bin
maven settings.xml:
<settings>
<proxies>
<proxy>
<active>true</active>
<protocol>http</protocol>
<host>proxy.xxx.entp</host>
<port>8080</port>
<username>myuser</username>
<password>mypassword</password>
<nonProxyHosts>*.xxx.entp|localhost</nonProxyHosts>
</proxy>
</proxies>
</settings>
在我的客户端计算机(http://www.microsoft.com/en-us/download/details.aspx?id=30661)上为团队基础服务器安装Eclipse和团队资源管理器后,我使用select pom文件定义了maven构建
在Windows命令提示符下使用“mvn assembly:assembly -P prod
”命令成功完成了Maven构建。但是在运行时不能运行构建定义。我添加了maven环境变量,但是tfs build没有找到maven home,bin目录,启动目录。为什么?或者任何方式?
输出构建日志:
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets - 4个错误,1个警告,查看日志文件
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets(238):在MavenHome中找不到bin目录。
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets(238):在MavenHome中找不到启动目录。
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets(238):对象引用未设置为对象的实例。
在System.Activities.WorkflowApplication.Invoke(活动活动,IDictionary 2 inputs, WorkflowInstanceExtensionManager extensions, TimeSpan timeout)
at System.Activities.WorkflowInvoker.Invoke(Activity workflow, IDictionary
2输入,TimeSpan超时,WorkflowInstanceExtensionManager扩展)
在Microsoft.TeamFoundation.Build.Extensions.Tasks.WorkflowTask.Execute()
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets(238):“Maven”任务意外失败。 System.NullReferenceException:未将对象引用设置为对象的实例。 在Microsoft.TeamFoundation.Build.Extensions.Tasks.WorkflowTask.Execute() 在Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() 在Microsoft.Build.BackEnd.TaskBuilder.d__20.MoveNext()
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets(238):在运行过程中找不到环境变量“JAVA_HOME”,但是在用户或机器设置中找到了。您可能需要重新启动构建代理以获取新定义的环境变量。
C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v10.0 \ BuildExtensions \ Microsoft.TeamFoundation.Build.Extensions.Maven2.targets已编译
没有测试结果
无代码覆盖率结果
其他错误和警告
1个错误,0个警告
异常消息:TF270015:'MSBuild.exe'返回了意外的退出代码。预计'0';实际的'1'。有关详细信息,请参阅构建日志。 (输入UnexpectedExitCodeException) 异常堆栈跟踪:在System.Activities.Statements.Throw.Execute(CodeActivityContext context) 在System.Activities.CodeActivity.InternalExecute(ActivityInstance实例,ActivityExecutor执行器,BookmarkManager bookmarkManager) at System.Activities.Runtime.ActivityExecutor.ExecuteActivityWorkItem.ExecuteBody(ActivityExecutor executor,BookmarkManager bookmarkManager,Location resultLocation)
答案 0 :(得分:1)
我遇到了同样的问题。显然,相关错误和解决方案打印在消息的末尾:“ 您可能需要重新启动构建代理以获取新定义的环境变量 ”
重新启动构建代理,一切都会像魔法一样。