gpt4 book ai didi

asp.net - TFS 构建服务器无法使发布配置文件正常工作 : "Can' t find the valid AspnetCompilerPath"

转载 作者:行者123 更新时间:2023-12-02 11:38:45 25 4
gpt4 key购买 nike

我有一个包含一堆 Web 项目的解决方案,我希望我的构建服务器自动为每个项目创建包。我能够让(几乎)一切正常运转。构建很好,并且将在每个构建上创建包。但仅当我未在 MSBuild 参数中指定 PublishProfile 时。因此它只会插入默认值,不会预编译我的网站等。(参数为 /p:DeployOnBuild=True/p:IsAutoBuild=True/p:VisualStudioVersion=12.0)

但是我想使用我在 Visual Studio 中创建的发布配置文件 (.pubxml)。每个项目都有一个“Test.pubxml”。但是当我指定 PublishProfile 参数时,构建将失败并显示以下错误消息(参数为 /p:DeployOnBuild=True;PublishProfile=Test/p:IsAutoBuild=True/p:VisualStudioVersion=12.0) :

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\Web\Transform\Microsoft.Web.Publishing.AspNetCompileMerge.targets (411):找不到有效的 AspnetCompilerPath

是的,文件 Microsoft.Web.Publishing.AspNetCompileMerge.targets 确实存在于该文件夹中。我可以在我的开发人员计算机上很好地部署 Visual Studio 中的项目。

我正在使用以下内容:Windows Server 2012 R2Visual Studio Ultimate 2013 Update 1(安装在生成服务器上)项目适用于 .Net 4.5.1

最佳答案

我遇到了同样的问题,找到了这个问题,并提出了一个稍微不那么棘手的解决方案:

只需添加 /P:Framework40Dir=c:\windows\microsoft.net\framework\v4.0.30319作为附加的 MSBuild 参数。

无需编辑 .targets 文件或设置任何其他内容。为我工作,所以我就这样做:

msbuild MyWebProject.csproj /T:Package /P:PublishProfile=MyProfile /P:Framework40Dir=(as above)

我用它来将 Web 部署包构建到我选择的子文件夹中 - 没有配置文件,它会转到 obj/debug/package 。谁使用obj ?布莱尔:)

关于asp.net - TFS 构建服务器无法使发布配置文件正常工作 : "Can' t find the valid AspnetCompilerPath",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23341102/

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