我想使用Jenkins将新提交的代码从Perforce复制到Dev Server。 当项目在Jenkins中运行时,它将检测Perforce工作区中的所有更改,并构建+部署代码到特定服务器。
我在Windows上使用Jenkins。
我已经在Windows 7笔记本电脑上安装了Jenkins和Perforce插件,用于测试/尝试。
配置全部已设置, 在配置系统 - > Perforce - > Perforce exe的路径设置为C:\ Program Files \ Perforce \ p4v.exe,这是正确的路径。
在源代码管理下的项目中 - > Perforce我已经设置好了 主机名:端口, 用户名和密码, 工作区, 客户端视图类型以查看包含位置的地图。
当我尝试构建项目时,我得到一个例外:
Started by user anonymous
Building in workspace <http://localhost:8080/job/Test3/ws/>
Using master perforce client: Jenkins_Test [workspace] $ "C:\Program Files\Perforce \p4v.exe" workspace -o Jenkins_Test Caught exception communicating with perforce. No output for: C:\Program Files\Perforce\p4v.exe workspace -o Jenkins_Test com.tek42.perforce.PerforceException: No output for: C:\Program Files\Perforce\p4v.exe workspace -o Jenkins_Test at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTempl ate.java:408) at com.tek42.perforce.parse.AbstractPerforceTemplate.getPerforceResponse(AbstractPerforceTempl ate.java:301)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1615)
at hudson.plugins.perforce.PerforceSCM.getPerforceWorkspace(PerforceSCM.java:1576)
at hudson.plugins.perforce.PerforceSCM.checkout(PerforceSCM.java:892)
at hudson.model.AbstractProject.checkout(AbstractProject.java:1320)
at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:609)
at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:88)
at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:518)
at hudson.model.Run.execute(Run.java:1688)
at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
at hudson.model.ResourceController.execute(ResourceController.java:88)
at hudson.model.Executor.run(Executor.java:231)
ERROR: Unable to communicate with perforce. No output for: C:\Program Files\Perforce\p4v.exe workspace -o Jenkins_Test
有什么问题,我如何实现目标(Jenkins将检测Perforce中的所有更改并构建+部署代码到特定服务器。)
答案 0 :(得分:2)
你说“Perforce exe的路径设置为C:\ Program Files \ Perforce \ p4v.exe”。
p4v.exe是Perforce的GUI工具。
您可能需要Perforce的命令行工具,即“p4.exe”。
查看同一目录中是否有“p4.exe”,并将配置更改为指向p4.exe而不是p4v.exe。