Comment conserver les valeurs définies dans une cible de génération active dans un autre targert? Si PropertyGroup n'est pas l'entité d'écriture MsBuild que je devrais utiliser ici, qu'est-ce que c'est? RELEASEDIR est imprimé ok dans la cible « Package », mais il est vide « DoPackage »Transmission d'une valeur de groupe de propriétés d'une tâche MsBuild à une autre
<Target Name="Package">
<PropertyGroup>
<ReleasesDir>c:\tmp</ReleasesDirBase>
</PropertyGroup>
<Message Text="$(ReleaseDir)"/>
<CallTarget Targets="DoPackage" Condition="!Exists('$(ReleaseDir)')"/>
</Target>
<!-- Do the acutal packaging -->
<Target Name="DoPackage">
<Message Text="Creating package in '$(ReleaseDir)'"/>
<Error Condition="'$(ReleaseDir)' == ''" Text="No ReleaseDir defined"/>
<MakeDir Directories="$(ReleaseDir)"/>
...
</Target>
Je voudrais que DoPackage s'exécute seulement si ReleaseDir existe (j'ai utilisé la Condition dans CallTarget pour réaliser ceci). Puis-je y parvenir en utilisant DependsOnTarget? – ripper234
Maintenant que j'ai lu le lien que vous avez posté, la solution est simple - j'ai écrit une tâche distincte appelée 'DefineProperties', et une fois terminée, les propriétés sont ... définies. Merci. – ripper234
Oui, c'est la solution, j'ai mis à jour l'échantillon. –