![](/img/trans.png)
[英]Jenkins build error, visual studio 2010, MSbuild , System.IO.IOException process cannot access the file because it is used by another process
[英]Jenkins MSBuild Process cannot access the file
在我的Jenkins构建工作流程中,我使用MSBuild来构建项目,然后运行发布配置文件来部署文件。 常规设置如下:
使用MSBuild生成Visual Studo项目或解决方案
MSBuild版本:
MSBuild VS2017
MSBuild构建文件:
ProjectName.csproj
命令行参数:
/ P:DeployOnBuild =真
/ P:PublishProfile =配置文件名称
/ P:配置=配置名称
我遇到的问题是它在发布过程中抛出,“ 该进程无法访问文件________,因为它正在被另一个进程使用。 ”:
C:\\ Program Files(x86)\\ Microsoft Visual Studio \\ 2017 \\ BuildTools \\ MSBuild \\ Microsoft \\ VisualStudio \\ v15.0 \\ Web \\ Deploy \\ Microsoft.Web.Publishing.Deploy.FileSystem.targets(96,5):错误:将文件obj \\ jenkins-services-cms \\ Package \\ PackageTmp \\ bin \\ FileName.dll复制到\\ server \\ bin \\ FileName.dll失败。 该进程无法访问文件'\\ server \\ bin \\ FileName.dll',因为它正在被另一个进程使用。 [D:\\ jenkins \\ workspace \\ WorkspaceName \\ ProjectName.csproj]
在Jenkins中手动安排另一个构建通常可以解决构建错误。 有什么方法可以在发布过程中应用权限来避免此问题?
Jenkins MSBuild Process无法访问该文件
根据错误消息“ 该进程无法访问文件'\\ server \\ bin \\ FileName.dll',因为它正在被另一个进程使用。 ”。 似乎您没有对该文件夹server
写权限。
您可以尝试通过该文件夹上的.wpp.targets
文件设置写入权限,有关详细信息,请参考文档: 在Web Publish上设置文件夹权限
如果上述方法不能帮助您,请尝试使用Process Explorer找出该文件/文件夹上的内容,并确保关闭所有Visual Studio实例,并可以尝试终止该句柄。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.