66 votes

Dans Visual Studio, à quoi sert la commande "Nettoyer"?

Vous savez, celui qui produit ceci =>

------ Nettoyage démarré: Projet: Foo.Bar, Configuration: Débogage de tout processeur ------
========== Nettoyer: 1 a réussi, 0 a échoué, 0 ignoré ==========

Qu'est-ce que c'est le nettoyage?

72voto

Jon Skeet Points 692016

Les répertoires de sortie - il supprime le code qu'il a précédemment construit.

Il ne supprime pas les répertoires bin / obj eux-mêmes (ni les répertoires Debug / Release situés en dessous), mais uniquement les fichiers .exe, .dll, etc. Malheureusement, cela le rend moins utile pour mon utilisation habituelle de nettoyage des répertoires de sortie: lorsque je veux compresser le code source. Comme l'action Nettoyer ne le fait pas, d'habitude, je supprime simplement les répertoires bin et obj directement.

30voto

Richard Berg Points 14218

Pourquoi ne pas regarder par vous-même? Ouvrir Microsoft.Commun.Objectifs (se trouve dans %windir%\Microsoft.NET) et vous verrez une section comme suit:

<!--
============================================================
                                    Clean

Delete all intermediate and final build outputs.
============================================================
-->
<PropertyGroup>
    <CleanDependsOn>
        BeforeClean;
        CleanReferencedProjects;
        UnmanagedUnregistration;
        CoreClean;
        CleanPublishFolder;
        AfterClean
    </CleanDependsOn>
</PropertyGroup>
<Target
    Name="Clean"
    Condition=" '$(_InvalidConfigurationWarning)' != 'true' "
    DependsOnTargets="$(CleanDependsOn)" />

Poursuivez votre lecture pour voir exactement ce que chacun de ces sous-objectifs. (Certains, bien sûr, sont tout simplement les stubs pour l'utilisateur de remplacer).

Personnellement, j'aime voir ce que les manigances de ma fantaisie-pantalon IDE est derrière mon dos. À cette fin, je vous recommande l'augmentation de la quantité d'information écrite dans la fenêtre de Sortie. Outils -> Options -> Projets & Solutions -> Build & Run -> MSBuild verbosité -> changement de "Minimes", à la "Normale" ou "Détaillée".

Essayez votre Propre opération et de regarder la sortie maintenant! La corrélation entre ce que vous voyez l' *.objectifs de fichiers est une bonne façon de commencer l'apprentissage MSBuild.

15voto

Joseph Points 18099

Il parcourt vos répertoires de sortie et supprime tous les fichiers liés à leur construction.

Je pense que vous pouvez également configurer cela en allant dans les propriétés du projet dans

Propriétés de configuration -> Général, sous "Extensions à supprimer lors du nettoyage"

4voto

vehomzzz Points 7182

supprime tous les fichiers associés à la construction, aux répertoires de sortie

2voto

Adam Casey Points 635

Les gens utilisent un «nettoyage» pour forcer une reconstruction complète à partir de la source. Votre compilateur ne reconstruit pas chaque fichier à chaque fois s'il n'a pas changé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X