我尝试从Visual Studio 2013发布一个Web项目,但是使用Web部署继续收到此错误。
Web部署任务失败。未知的ProviderOption:DefiningProjectFullPath。已知的ProviderOptions是:skipInvalid。
答案 0 :(得分:5)
在为Visual Studio 2013安装更新4后,我遇到了同样的问题。
<强>解决方案:强> 在构建服务器上安装Visual Studio更新。
答案 1 :(得分:3)
我遇到了同样的错误。
安装TFS RM Update2后出现此错误。 你需要做的是替换&#34; C:\ Program Files(x86)\ MSBuild \ Microsoft \ VisualStudio \ v12.0 \ Web&#34;的内容。在您的构建服务器上,开发板上具有相同文件夹的内容。
无论如何,这对我有用。
答案 2 :(得分:3)
当我更新构建服务器以使用新的roslyn编译器(使用c#6功能)和安装required stuff(.NET 4.6 Framework,Microsoft Build Tools 2015,.NET)后,我遇到了这个问题Framework 4.6 target Pack)当我尝试发布项目(C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications\Microsoft.WebApplication.targets
Msbuild目标)时,我收到错误 "Package"
。
所以我添加了/p:VisualStudioVersion=12.0
参数MSBuild命令进行发布,以便从 C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets
获取目标,然后我收到了有问题的错误(Web deployment task failed. (Unknown ProviderOption:DefiningProjectFullPath. Known ProviderOptions are:skipInvalid.)
)
我有两个解决这个问题的方法:
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\WebApplications\Microsoft.WebApplication.targets
以构建服务器,并从MSBuild命令arguments中删除/p:VisualStudioVersion=12.0
参数。默认情况下,新的MSBuild(位于C:\Program Files (x86)\MSBuild\14.0\bin\amd64\MSBuild.exe'
)将VisualStudioVersion
设置为14.0
,并将使用适用于新编译器的新MSBuild目标。/p:VisualStudioVersion=12.0
命令参数MSBuild并将以下文本添加到无法发布的项目的.csproj文件中:<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != '' And Exists('$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets')" />
<Import Project="..\..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.14.0.0\tools\VSToolsPath\WebApplications\Microsoft.WebApplication.targets" Condition="('$(VSToolsPath)' == '' Or !Exists('$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets')) And Exists('..\..\packages\MSBuild.Microsoft.VisualStudio.Web.targets.14.0.0\tools\VSToolsPath\WebApplications\Microsoft.WebApplication.targets')" />
这将首先检查构建服务器上是否有Microsoft.WebApplication.targets
(在...VisualStudio\v14.0\
目录中),如果没有,它将从解决方案中导入一个(包含在packages
目录中)
如果它不能工作,请检查你的.csproj文件中是否有这个:
<PropertyGroup>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
答案 3 :(得分:1)
在Visual Studio中,转到工具 - &gt;扩展程序和更新 - &gt;更新 - &gt;产品更新
安装最新的Azure SDK(即使您没有使用Azure ,)。
另外,我安装了MSBuild Targets NuGet,用于VS2012目标。我为我的VS版本(2013)安装了版本,一切都恢复正常。
答案 4 :(得分:0)
我有Visual Studio 2013,但昨天我也安装了Visual Studio 2015,并在尝试在VS 2013中发布网站时给出了同样的错误。我解决了这个问题,只是运行了visual studio 2013的更新5
答案 5 :(得分:-1)
安装2015预览后,我在VS 2013中遇到了这个问题。
我的解决方案是仅从VS 2015发布......