Wie behalte ich die in einem Build-Ziel definierten Werte in anderen Bereichen? Wenn PropertyGroup nicht die Schreib-MsBuild-Entität ist, die ich hier verwenden soll, was ist das? RELEASEDIR gedruckt ok in "Package" Ziel, aber leer in "DoPackage"Übergeben von Eigenschaftsgruppenwerten von einer MsBuild-Aufgabe an eine andere
<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>
Ich möchte, dass DoPackage nur ausgeführt wird, wenn ReleaseDir vorhanden ist (ich habe die Bedingung in CallTarget verwendet, um dies zu erreichen). Kann ich dies mit DependsOnTarget erreichen? – ripper234
Nun, da ich den Link gelesen habe, den Sie gepostet haben, ist die Lösung einfach - ich habe eine separate Aufgabe mit dem Namen 'DefineProperties' geschrieben, und nachdem sie fertig ist, werden die Eigenschaften ... definiert. Vielen Dank. – ripper234
Ja, das ist die Lösung, ich habe das Sample aktualisiert. –