【问题标题】:The target "_CopyBinDeployableAssemblies" does not exist in the project项目中不存在目标“_CopyBinDeployableAssemblies”
【发布时间】:2011-06-08 13:12:53
【问题描述】:

前几天我安装了 Visual Studio 2010 SP1,现在当我尝试“发布”我的应用程序时,我的所有项目都出现此错误。

The target "_CopyBinDeployableAssemblies" does not exist in the project.

我不知道这里有什么问题,我在强大的谷歌上找不到任何东西,这让我有点紧张。

谁能在这里指出我正确的方向,或者其他人也有同样的问题?因为它发生在我所有的项目中,所以我对我一个人遇到这个问题感到有点惊讶。

这些站点是 ASP.NET Web 应用程序,其中一些是混合的 Web 表单/MVC,但一个只是 Web 表单。 1 个站点非常简单,几乎没有参考,但我仍然收到错误。

【问题讨论】:

  • Service Pack 仍处于测试阶段。您可以在 connect.microsoft.com 上报告错误
  • 是的,我知道。我在下面发布了一个答案,所以现在至少在谷歌上有一些关于这个问题的参考。
  • 我们在 Service Pack 1 的最终版本中遇到了同样的问题。
  • 如果您在 Azure 上或在 Visual Studio 中发布,请参阅stackoverflow.com/a/22055219/21574

标签: visual-studio deployment visual-studio-2010


【解决方案1】:

这是 VS 2013 SP 3,我仍然遇到这个问题! 为了解决这个问题,我不得不在未能从以下位置构建项目中更改以下行:

<Import Project="$(VSToolsPath)\Web\Microsoft.Web.Publishing.targets" Condition="'$(VSToolsPath)' != ''" />

到以下行:

<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />

【讨论】:

    【解决方案2】:

    嗬嗬,雅各布是对的!

    当我们安装 VS 2010 SP1 时,默认的 MSBuild 路径将聚焦到文件夹

    [C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0]

    不是

    [C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0] 更多。

    [Microsoft.WebApplication.targets] 文件有一个名为 [_CopyBinDeployableAssemblies] 的构建目标。

    所以我们只需在我们的项目文件中添加一个 [_CopyBinDeployableAssemblies] 目标(可以用记事本打开它:)) ,问题解决了

    例如:&lt;Target Name="_CopyBinDeployableAssemblies"&gt;&lt;/Target&gt;。只需要一个空目标:)

    【讨论】:

      【解决方案3】:

      取消部署项目并在&lt;Import&gt;末尾的项目文件中编辑并添加以下代码

      <Target Name="_CopyBinDeployableAssemblies" 
              Condition="Exists('$(MSBuildProjectDirectory)\_bin_deployableAssemblies')">
          <CreateItem Include="$(MSBuildProjectDirectory)\_bin_deployableAssemblies\**\*.*" 
                  Condition="Exists('$(MSBuildProjectDirectory)\_bin_deployableAssemblies')" 
                  Exclude="$(MSBuildProjectDirectory)\_bin_deployableAssemblies\.svn\**\*">
              <Output ItemName="_binDeployableAssemblies" TaskParameter="Include" />
          </CreateItem>
          <Copy SourceFiles="@(_binDeployableAssemblies)" 
                  DestinationFolder="$(OutDir)\%(RecursiveDir)" SkipUnchangedFiles="true" 
                  Retries="$(CopyRetryCount)" 
                  RetryDelayMilliseconds="$(CopyRetryDelayMilliseconds)" />
      </Target> 
      

      【讨论】:

        【解决方案4】:

        joao-angeloblog post,将以下内容添加到项目文件(.csproj/.vbproj)

        <Target Name="Noop"></Target>
        
        <PropertyGroup>
          <CollectFilesFrom_binDeployableAssembliesDependsOn>
            Noop
          </CollectFilesFrom_binDeployableAssembliesDependsOn>
        </PropertyGroup>
        

        导入前

        <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets" />
        

        这适用于我在 VS2010 SP1 上使用 ClickOnce 使用 App.config transform

        【讨论】:

          【解决方案5】:

          拉格给出的答案也对我们有用。我有一个自 SP1 安装以来没有打开的解决方案,它只是拒绝构建并出现相同的错误。在记事本中编辑项目文件以包含这两个语句和中提琴!问题解决了。非常感谢您的勤奋!

          添加:一位同事提到添加导入将导致在 Visual Studio 之外发生的构建可能会抱怨(命令行 msbuild,构建服务器),因为那里不存在 Microsoft.WebApplication.targets。所以我们将导入行改为:

          <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="$(BuildingInsideVisualStudio) == true AND exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets')" />
          

          这些条件对于我们的构建很重要,因为我们使用构建服务器和 msdeploy 进行所有部署。

          【讨论】:

            【解决方案6】:

            Ragge 上面给出的答案正是我所需要的。但就我而言,我只添加了第二行。 Ragge 给出的第一行已经在项目文件中。

            <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
            

            【讨论】:

              【解决方案7】:

              我在安装 Visual Studio 2010 SP1 Beta 后也遇​​到了这个问题。

              缺少的目标_CopyBinDeployableAssemblies 定义在:

              $(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets
              

              我通过在损坏的项目文件中添加&lt;Import&gt; 元素解决了这个问题。

              因此,如果您对上述目标有依赖,您可以通过在项目文件中查找以下&lt;Import&gt; 来查找:

              <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets" />
              

              你还需要导入:

              <Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
              

              【讨论】:

              • 如果(像我们一样)您正在运行 RTM 和 SP1b 的混合,您可以在最后一次导入中包含 Condition="Exists('$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications \Microsoft.WebApplication.targets')" 这将防止未安装 SP 的用户出错。
              • 以上是正确的解决方案,以下适用于 32 位和 64 位版本。
              • +1,在 SP1 的最终版本中遇到了同样的问题,添加新的导入修复了它。但是,在删除旧导入之前,我收到了警告,所以我猜如果您只使用 SP1,最好的解决方案是替换导入而不是添加新导入。
              • CopyBinDeployableAssemblies 在我的 Microsoft.WebApplication.targets 文件中是 not。添加它的先决条件是什么?我安装了 SP1(生产)。
              • 像这样使用 Visual Studio 版本路径(是的,我什至在 2018 年使用 VS2017ENT 时遇到此错误):$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\WebApplications\Microsoft.WebApplication.目标
              【解决方案8】:

              好吧,今天花了 4 小时解决了这个问题。但不幸的是,我没有明确的答案是什么问题。但我会描述我做了什么。

              1. 已卸载 SP 1 并出现一些错误。这些在哪里,因为我没有 VS 安装媒体,它在哪里要求它。
              2. SP1 似乎已被删除,但我仍然收到错误消息。
              3. 已下载 VS Ultimate 试用版并尝试进行修复,但没有帮助。
              4. 再次下载VS 2010 SP1并安装。还是一样的问题。
              5. 卸载 VS SP1 并访问 VS Ultimate 安装媒体,我只收到一个错误,它需要一些 VS Express 的东西,我按下取消,它说卸载失败。
              6. 启动了 Visual Studio,问题就消失了!哈利路亚!

              好吧,我一点也不怪 MS。我知道它在哪里是测试版,但我以前从未遇到过这样的问题。

              希望这可以解决其他人的问题。

              【讨论】:

                猜你喜欢
                • 2018-07-12
                • 2016-04-17
                • 2014-07-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多