.net - Jenkins、MSBuild 和 Web 部署 : Unable to create Web Package

标签 .net msbuild jenkins msdeploy webdeploy

我目前正在尝试在构建服务器 (Windows Server R2) 上创建 Jenkins CI 作业,结果发现在不安装 Visual Studio 的情况下需要做更多的工作。对于这项工作,我尝试使用 Visual Studio 项目中的 .csproj 文件构建一个 Web 包。下面是我在 Jenkins 中的 MSBuild 操作设置:

MSBuild Version: .NET 4.0
MSBuild Build File: MyProject\MyProj.Web\MyProj.Web.csproj
Command Line Arguments: /T:Build;Package /p:Configuration=Release;PackageLocation="C:\MyProj\MyProj.Web.zip";VisualStudioVersion=11.0

运行构建时发生的错误是这样的:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets(2704,5): error : Package/Publish depends on Microsoft Web Deployment technology. Microsoft Web Deployment is not correctly installed on this machine. Please install from following link: For x86(32 bit): http://go.microsoft.com/fwlink/?LinkId=109365.For x64(64 bit): http://go.microsoft.com/fwlink/?LinkId=109366

我确实在构建计算机上安装了 Web Deploy,所以我不太确定问题可能是什么。任何帮助将不胜感激!

最佳答案

我的用例和你的一样。 Jenkins运行msbuild来运行msdeploy

我使用了 msdeploy.exe,而不是直接从 msbuild 创建包

所以我有一个 msbuild 目标

<Target Name="PackageArtifacts">
<Exec Command='"@(MsDeploy)" -verb:sync -source:iisApp="$(Source)",includeAcls=true -dest:package="$(Destination)"'/>
</Target>

哪里 msdeploy 是 msdeploy.exe 的目录 source 是您可发布网站的目录 目的地是您的包名称“{filepath}/package.zip”

关于.net - Jenkins、MSBuild 和 Web 部署 : Unable to create Web Package,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16923126/

相关文章:

jenkins - 如何将html文件的内容包括到jenkins email-ext的模板中?

c# - .Net 解决方案与 c# 和 visual basic 项目

c# - 是否可以返回到C#中遇到错误的行?

.net - 如果某些进程需要分配超过 2 GB 的内存,会发生什么情况?

msbuild - 在 MSBuild 脚本中获取文件大小

TFS增量构建错误-无法执行获取操作,因为文件已存在于本地

msbuild - 并行 MSBUILD - 关键部分?

git - Jenkins 无法获取 repo - 代码 255 权限被拒绝

Jenkins GMavenPlus 插件无法在 groovy 脚本中导入本地类

c# - 自定义编辑/删除按钮 Gridview