4

我一直在这个问题上四处走动。我有一个内置于 VS2010 SP1 的 ASP.NET MVC 3 Web 应用程序。当我尝试发布到本地文件系统时,出现错误

项目中不存在目标“GatherAllFilesToPublish”。

它失败了。我已按照为什么会收到错误“目标 GatherAllFilesToPublish 不存在”中描述的答案进行操作?但这并不能解决我的问题。

我已经为 VS2010(2012 年 10 月)安装了 Azure SDK 1.8,试图让我的系统恢复工作。通过此安装,我在我的 MSBuild 树中看到以下文件/文件夹。

Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.Targets,日期为 2011 年 1 月 18 日。

该文件未提及“GatherAllFilesToPublish”

安装 Azure SDK 后,我有另一个文件/文件夹:

Microsoft\VisualStudio\v10.5\Web\Microsoft.Web.Publishing.Targets,日期为 2012 年 9 月 27 日。

该文件确实包含“GatherAllFilesToPublish”目标。

显然我在 VS2010 中的发布功能没有使用 v10.5 文件夹的目标。有没有人有任何建议来解决这个问题?

谢谢,

4

1 回答 1

3

而答案是……

在过去的某个时候,该项目已被编辑为包含 msbuild 文件夹的本地副本,但我忘记了它。我使用 sysinternals 的 procmon 来查找文件访问权限,它仅在我的项目下引用 msbuild。

有了这个,我重命名了文件夹,编辑了 csproj 文件以删除 MSBuildExtensionsPath32 的本地化引用,然后重新加载了项目。

我能够成功发布我的应用程序。

于 2012-12-24T20:11:16.353 回答