使用MsBuild构建并创建部署包

3
我正试图使用以下命令构建我的解决方案,但是它提示错误说MSBuild目标包未找到

"C:\Windows\Microsoft.NET\Framework\v4.0.30319\msbuild.exe" "C:\Users\FullPath\SolutoinName.sln" /T:Build /p:Configuration=DEBUG /p:OutputPath="obj\DEBUG" /p:DeployIisAppPath="/bidmc-defaul" /p:VisualStudioVersion=10.0

我尝试过MSBuild target package not found,但没有帮助,然后我从目标中删除了package并运行命令,成功了
然后我运行了以下命令来创建一个打包的zip文件

"C:\Program Files (x86)\IIS\Microsoft Web Deploy\msdeploy.exe" -verb:sync -source:package="C:\Users\Full Path\Website\obj\Debug_PublishedWebsites\defaul_Package\myPackage.zip" -dest:auto,computerName=localhost -allowUntrusted=true

现在显示“无法创建类型为包和路径的对象,无法加载zip包,找不到路径的一部分”。 更新

修复我的第一个创建软件包的命令。我给出了我的解决方案名称SolutoinName.sln,我将其替换为解决方案中的主要项目myproject.csproj,并更改相应的路径。这解决了我的第一个错误。

现在第二个错误已更改为“您尝试使用的应用程序池具有managedRuntimeVersion属性设置为v4.0,应用程序需要4.5”

我该如何解决这个问题,只需在构建机器上安装.NET 4.5吗?

3个回答

2

以防其他人在使用VisualStudio 2017(C#5.0+)时遇到此问题,msbuild v14不会创建发布包,但是在Visual Studio目录中找到的msbuild v15(而不是msbuild)将创建包。花了我两天时间为新的TeamCity服务器解决这个问题。只影响Web应用程序,这使得定位问题更加困难。没有提供任何错误或警告。 - Piotr Kula
@ppumkin 我已经苦苦挣扎了几天,但是无法从MVC(.net framework 4.6.1, VS 2017)项目中构建包(或发布)。您能否提供您用于打包该项目的完整命令行参数/开关? - TheVillageIdiot

0

你需要在 MSBuild 调用中将 VisualStudioVersion 更改为 11。

/p:VisualStudioVersion=11.0

0
使用IIS管理器升级分配给您的应用程序池的.NET Framework版本(或更改您的项目属性以降级您的Web应用程序所针对的.NET Framework版本)。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接