Mam obiekt kompilacji próbuję wykonać w MSBuild. Cel ma kilka wejść i wyjść, które umieściłem tam, aby przyspieszyć czas w przypadku kompilacji pośredniej. Pliki wejściowe zawsze istnieją (pliki nagłówkowe), z drugiej strony wyjścia nie zawsze istnieją (pliki XML).MSBuild: Nieudane wejścia i wyjścia docelowe przy pierwszym wykonaniu
Konstrukcja pośrednia, która prawdopodobnie pomija zadanie, jest dość pożądana, ponieważ jest dość kosztowna pod względem wydajności.
W każdym razie, wejścia i wyjścia działają świetnie IF wyjścia już istnieją. W takim przypadku MSBuild emituje bardzo pomocny komunikat, że cel jest pomijany, ponieważ wszystkie pliki są aktualne.
Jest to przypadek, gdy nie istnieje katalog wyjściowy i pliki (po raz pierwszy, to zadanie zostanie uruchomione), który MSBuild nie powiedzie się z następującym komunikatem:
Pomijanie cel [targetName], ponieważ nie ma wyniki.
Dodanie szczegółowej gadatliwości mówi mi, że powodem jest to, że elementy @ (OutputXML) są puste. Ok, więc co teraz? Nie wydaje się zatem, aby cała koncepcja Pośrednich Budowy w MSBuild była wtedy bardzo solidna.
Moje pytanie brzmi, w jaki sposób mogę uzyskać korzyści z pośredniej kompilacji i nadal mieć ten cel, gdy nie ma wyjść? (Mam nadzieję, że nie muszę uciekać się do pisania moje własne rozszerzenie zadań)
Oto odnośny fragment mojego skryptu build:
<ItemGroup>
<Headers Include="..\**\*.h" />
<OutputXML Include="$(OutputDir)\*.xml" />
</ItemGroup>
<Target Name="Doxygen"
Inputs="@(Headers)"
Outputs="@(OutputXML)" >
<Exec ... />
</Target>
Uwaga: Byłem całym google , msdn i ta strona próbują znaleźć odpowiedź i jak dotąd nie udało się. Chociaż znalazłem bardzo pomocne informacje na temat MSBuild w ogóle.
Witaj Chris, niepowiązany z tym wpisem. Kontaktuję się z tobą, aby uzyskać pomoc dotyczącą MSBuild. Jestem nowy w MsBuild i zamierzam generować pliki rozwiązań w locie. Zauważyłem, że w poście SO poniżej wspomniałeś, że masz rozwiązanie czegoś podobnego. Czy mógłbyś podzielić się mną ze mną? Dzięki. http://stackoverflow.com/questions/13300294/can-i-use-msbuild-scripts-to-replace-sln-files – user559788