msbuild 命令行尚不支持 WebPublishMethod(FileSystem)
Posted
技术标签:
【中文标题】msbuild 命令行尚不支持 WebPublishMethod(FileSystem)【英文标题】:WebPublishMethod(FileSystem) is not yet supported on msbuild command line 【发布时间】:2016-07-20 17:20:31 【问题描述】:我正在使用带有运行 VS2015 的本地构建代理的 Visual Studio Team Services(在 visualstudio.com 上)。在我们的解决方案中,有 3 个网站将文件系统发布配置文件发布到开发、测试、演示环境,并应用了配置转换。
当在本地 VS2015 IDE 中运行时,它们可以正常工作。尝试从“Visual Studio Build”任务在 Team Services 在线的构建定义中发布相同的配置文件时,遇到以下错误:
尚不支持此特定的 WebPublishMethod(FileSystem) msbuild 命令行。请使用 Visual Studio 发布。
已为任务的 MSBuild 参数设置以下内容。
/p:DeployOnBuild=true /p:OutDir=$(build.artifactstagingdirectory) /p:PublishProfile=TestProfile
在谷歌上搜索了几个小时后,我找不到让构建任务克服错误的方法。
我们正在尝试做的是让网站部署到一个文件位置,并将配置转换应用于适当的环境。无法使用 Webdeploy 或 FTP,只能使用文件系统部署。
是否可以通过配置转换获取文件系统发布配置文件,以便从 Team Services 引导的本地构建代理工作?还是我需要以其他方式解决这个问题?
建议的副本不会遇到相同的问题或错误消息。在那个问题中,发布配置文件有效,只是没有提供操作所期望的文件,这个问题是关于这里报告的错误。
【问题讨论】:
Using msbuild to execute a File System Publish Profile的可能重复 建议的副本不会遇到相同的问题或错误消息。在那个问题中,发布配置文件有效,只是没有提供操作所期望的文件,这个问题是关于这里报告的错误。 链接的问题足够相似,可以为同一问题提供潜在的解决方案。我还提供了一个对我有用的可能答案(tm)。 【参考方案1】:在我的情况下,publishUrl 配置不正确。
【讨论】:
【参考方案2】:`
\path\to\msbuild
/p:Configuration=Release
/p:DeployOnBuild=true
/p:PublishProfile=CI_RELEASE
/p:VisualStudioVersion=12.0
optional.sln
除了路径和格式,上述方法对我有用,我之前也因为使用“文件系统”部署方法而遇到发布错误。
我通过使用此处找到的网络发布更新解决了这个问题:
http://go.microsoft.com/fwlink/?LinkID=208120它确实安装了大量与 Azure 相关的垃圾,但它似乎确实为我解决了这个问题。
【讨论】:
【参考方案3】:我遇到了同样的错误。但在我的情况下,罪魁祸首是我设置了 /p:OutDir="" (又名空字符串 - doh!)。一旦我解决了这个问题,一切都开始按预期工作。只是我的 2c。
【讨论】:
以上是关于msbuild 命令行尚不支持 WebPublishMethod(FileSystem)的主要内容,如果未能解决你的问题,请参考以下文章
只有 msbuild 14 或 msbuild 15 支持 SonarQube 分析