gpt4 book ai didi

msbuild - VSTS 如何使用多项目解决方案创建包文件 (zip)

转载 作者:行者123 更新时间:2023-12-05 06:30:59 27 4
gpt4 key购买 nike

我们有两个网络项目的解决方案:

解决方案->
- 项目 1
- 项目 2

我们在 VSTS 中有一个 CI,用于构建和创建包(工件 zip 文件)。

当我们在解决方案中添加第二个项目时,工件只有一个项目。检查 VSTS 中的日志,我们看到了这些行:


2018-08-21T13:27:55.6971077Z CleanWebsitesPackageCore:
2018-08-21T13:27:55.6971269Z 删除文件“D:\a\1\a\20180821.17.zip”。
2018-08-21T13:27:55.6997562Z CleanWebsitesPackage:
2018-08-21T13:27:55.6997903Z 删除文件“D:\a\1\a\20180821.17.SourceManifest.xml”。
2018-08-21T13:27:55.7002478Z 删除文件“D:\a\1\a\20180821.17.deploy.cmd”。
2018-08-21T13:27:55.7006495Z 删除文件“D:\a\1\a\20180821.17.deploy-readme.txt”。
2018-08-21T13:27:55.7009652Z 删除文件“D:\a\1\a\20180821.17.SetParameters.xml”。
2018-08-21T13:27:55.7022918Z ValidateGlobalPackageSetting:
2018-08-21T13:27:55.7023199Z $(PackageAsSingleFile) 为真
2018-08-21T13:27:55.7023978Z $(PackageFileName) 是 D:\a\1\a\20180821.17.zip。证实...
2018-08-21T13:27:55.7028185Z CollectFilesFromIntermediateAssembly:

似乎 VSTS 在完成第一个项目后,删除 zip 文件并启动下一个项目。

我找到了定义目标项目名称(定义 -t)的解决方法:


/p:DeployOnBuild=true/p:WebPublishMethod=Package/p:PackageAsSingleFile=true/p:SkipInvalidConfigurations=true/p:DesktopBuildPackageLocation="$(build.artifactstagingdirectory)\$(Build.BuildNumber).zip"/p:DeployIisAppPath ="网站"/p:ProductsToRelease="前端"/t:前端\前端

如果我在我的计算机上执行 msbuild,zip 文件中有两个项目,但在 VSTS 中不起作用。

是否有任何配置可以避免删除目标 (CleanWebsitesPackageCore)?

最佳答案

对我来说,在我的 .sln 中,我有 4 个 csproj 应该添加到 webapp.zip。

在其中两个项目中,这导致调用 CleanWebsitesPackageCore,从而导致您遇到同样的问题。

我通过将以下空目标添加到 2 个有问题的 csproj 文件的底部来“修复”,这会覆盖正常的清理功能:

 <Target Name="CleanWebsitesPackageCore"/>
<Target Name="CleanWebsitesPackage"/>

关于msbuild - VSTS 如何使用多项目解决方案创建包文件 (zip),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51950868/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com