MSBuild führt keine BuildDependsOn-Tasks von einem importierten Projekt aus

8

Ich habe ein importiertes MSBuild-Projekt (appconfig.transformation.targets), das einige Aufgaben definiert und sie in die BuildDependsOn-Eigenschaft schreibt. Ich habe diese Datei im obersten Ordner für eine Lösung platziert (Projects \ LibrariesSolution \ appconfig.transformation.targets):

%Vor%

Ich importiere dieses Projekt in jeder csproj-Datei innerhalb der Lösung in Unterordnern. So hat Projects \ LibrariesSolution \ Project1 \ Project1.csproj etwa Folgendes:

%Vor%

Ich starte den Build wie folgt:

%Vor%

Aber die in BuildDependsOn aufgeführten Ziele scheinen nicht aufgerufen zu werden. Natürlich ist die Ausgabe viel zu ausführlich, aber "TransformWebConfig" erscheint nirgendwo in der Ausgabe. Es werden keine Fehler angezeigt. Was könnte falsch sein? Was muss ich tun, um den Prozess weiter zu beheben?

    
Jake Stevenson 10.05.2011, 14:43
quelle

1 Antwort

14

Sie haben ein Importauftragsproblem. Sie importieren Ihre Datei (appconfig.transformation.targets), die die Eigenschaft BuildDependsOn definiert. Später in der Projektdatei werden die Microsoft-Ziele importiert, die BuildDependsOn neu definieren und Ihre Änderungen löschen, da ihre Definition keinen vorhandenen Wert in BuildDependsOn enthält.

BuildDependsOn ist in Microsoft.Common.targets definiert, das von Microsoft.CSharp.targets für ein C # -Projekt importiert wird. Ihr Import sollte nach dem Import von Microsoft.CSharp.targets gehen.

    
Brian Walker 10.05.2011, 20:44
quelle

Tags und Links