L'objectif "Copybindeemployable Assemblies" n'existe pas dans le projet

J'ai installé Visual Studio 2010 SP1 l'autre jour et maintenant quand j'essaie de" publier " mes applications je reçois cette erreur sur tous mes projets.

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

Je n'ai aucune idée de ce qu'est le problème ici et je ne trouve rien sur le Tout Puissant Google et cela me rend un peu nerveux.

est-ce que quelqu'un peut m'indiquer la bonne direction ici ou peut-être que quelqu'un d'autre a le même problème? Parce que ça arrive dans tous mes projets donc je suis un peu étonnée que je sois seule avec ce problème.

les sites sont ASP.NET Applications Web, certains d'entre eux sont des formulaires Web mixtes/MVC, mais l'un d'eux n'est que des formulaires web. 1 site est super super simple avec presque pas de références et j'ai toujours l'erreur.

23
demandé sur Olaj 2011-01-13 17:40:48

8 réponses

j'ai également éprouvé ce problème après avoir installé Visual Studio 2010 SP1 Beta.

la cible manquante _CopyBinDeployableAssemblies est définie comme suit:

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

j'ai résolu le problème en ajoutant un élément <Import> aux fichiers de projet cassés.

donc si vous avez un depdendency sur les cibles ci-dessus, que vous pouvez trouver en cherchant le suivant <Import> dans vos fichiers de projet:

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

Vous devez également importer:

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
45
répondu Ragge 2011-01-28 15:00:41

à Partir de joao-angelo 's blog post , ajoutez la ligne suivante au fichier de projet (.csproj/.vbproj)

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

<PropertyGroup>
  <CollectFilesFrom_binDeployableAssembliesDependsOn>
    Noop
  </CollectFilesFrom_binDeployableAssembliesDependsOn>
</PropertyGroup>

avant importation

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

qui fonctionne pour moi en utilisant ClickOnce sur VS2010 SP1 en utilisant App.config transformer

4
répondu Philippe Lavoie 2017-05-23 11:47:16

Hoho, Jacob a raison!

lorsque nous installons VS 2010 SP1 le chemin MSBuild par défaut se concentrera sur le dossier

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

pas

[C:\Program fichiers (x86)\MSBuild\Microsoft\VisualStudio\v10.0] Plus maintenant.

et le [Microsoft.WebApplication.le fichier targets] a une cible de compilation nommée [_copybindeemployable Assembllies].

donc nous ajoutons simplement une cible [_copybindeemployable Assembllies] à notre dossier de projet(peut l'ouvrir avec Notepad :)) le problème a été résolu

Ex: <Target Name="_CopyBinDeployableAssemblies"></Target> . Juste besoin d'une cible vide :)

2
répondu Nguyen Minh Hien 2013-07-30 07:33:46

la réponse donnée ci-dessus par Ragge était ce dont j'avais besoin. Mais dans mon cas, je n'ai ajouté que la deuxième ligne. La première ligne Ragge a donné était déjà dans le dossier de projet.

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" />
1
répondu bobnew 2011-08-09 00:58:51

C'est VS 2013 SP 3 et j'ai toujours ce problème! Pour corriger cela, j'ai dû changer la ligne suivante dans le défaut de construire des projets de:

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

à la ligne suivante:

<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
1
répondu Edward Olamisan 2014-10-01 15:38:08

Eh bien, j'ai passé 4h à ça aujourd'hui et je l'ai résolu maintenant. Mais malheureusement je n'ai pas de réponse définitive, quel était le problème. Buit, je vais décrire ce que j'ai fait.

  1. désinstallé SP 1 et a eu quelques erreurs. Ces où car je n'ai pas le VS installer des médias et où demander.
  2. SP1 semblait avoir été supprimé mais j'ai quand même eu l'erreur.
  3. téléchargé VS ultime procès et essayé de faire réparation, n'a pas aider.
  4. a de nouveau Téléchargé VS 2010 SP1 et l'a installé. Toujours le même problème.
  5. désinstallé VS SP1 avec accès à VS Ultimate install media et je n'ai eu qu'une seule erreur où il avait besoin de quelque chose de VS Express, j'ai appuyé sur Annuler sur celui-ci et il a dit que la désinstallation a échoué.
  6. lancé studio visuel et le problème où allé! Alléluia!

et bien, je ne blâme pas MS pour cela à tout. Je savais où était la beta, mais je n'avais jamais eu ce genre de problème.

Espère que cela résout le problème pour quelqu'un d'autre.

0
répondu Olaj 2011-01-14 14:44:16

la réponse de Ragge a fonctionné pour nous aussi. J'avais une solution que je n'avais pas ouverte depuis SP1 install qui refusait de construire avec la même erreur. J'ai modifié le dossier de projet dans Notepad pour y inclure ces deux énoncés et viola! problème résolu. Merci beaucoup pour votre diligence!

Ajout: un collègue a mentionné que l'ajout de l'import causera des constructions se produisant à l'extérieur de Visual Studio de se plaindre probablement (ligne de commande msbuild, construire le serveur) parce que Microsoft.WebApplication.objectifs il n'y existe pas. Nous avons donc modifié la ligne d'importation pour lire:

<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')" />

ces conditions étaient importantes pour nos constructions car nous déployons tous en utilisant le serveur de construction et msdeploy.

0
répondu adillon 2012-05-04 16:16:51

annuler le déploiement du projet et de modifier et d'ajouter le code suivant dans le fichier projet à la fin de la <Import>

<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> 
0
répondu jacob justin 2013-03-06 07:50:21