2011-06-30 16 views
7

Jakie podejście dobrze się sprawdziło przy łączeniu IVY + msbuild?Jak zintegrować bluszcz z MSbuild

Naszym celem jest zintegrowanie IVY z procesem kompilacji C#/C++ do rozwiązywania zależności i publikowania. Próbowaliśmy dodać go do niestandardowych zadań na początku i końcu kompilacji i próbowaliśmy owijać wywołania msbuild za pomocą ant + apache-ant-dotnet.

Inne opcje mogą to być gradle, buildr, rake.

Jakich użyć?

Dzięki

Peter

+0

Nadal używasz Ivy z MsBuild? – granadaCoder

+0

już tam nie ma. Polecam używanie gradle do orkiestracji. Wydaje się, że jest to dobre połączenie mocy maven, użyteczności mrówek z łatwiejszymi do śledzenia kodami/idiomami. –

Odpowiedz

7

Większość budować technologie mogą korzystać z bibliotek znajdujących się w katalogu lokalnym. Sugeruję użyciu command-line ivy program zapełnić to, na początku swojej produkcji:

java -jar ivy.jar -ivy ivy.xml -settings ivysettings.xml -retrieve "lib/[conf]/[artifact].[ext]" 

Twoje Zależności są wymienione w standardowym pliku bluszcz zwanego ivy.xml. Protokół, lokalizacja i układ zdalnego repozytorium jest opisana w ivysettings.xml

Zaletą tego podejścia (w przeciwieństwie do przełączania Gradle, etc) jest to, że nie próbują zastąpić istniejące narzędzia do budowania . Ivy zajmuje się wyłącznie zarządzaniem zależnościami.

+1

Dla przyszłych czytelników. Sposób, w jaki patrzę na linię poleceń bluszczu, jest taki, że jest "głupi". Przekierowujesz niektóre pliki do repozytorium binarnego za pomocą wersji i nazwy pakietu. Później, inny proces, który potrzebuje tej "nazwy pakietu", użyje linii poleceń ivy do pobrania plików z repozytorium binarnego. Ponadto wolę konwencję nazewnictwa wersji Ivy nad Nuget. "2.1+" ma dla mnie sens. "najnowsza wersja" ma dla mnie sens. Tylko jedna opinia. Awans do tej odpowiedzi. – granadaCoder

0

Mój zespół od kilku lat z powodzeniem korzysta z Ivy dla .NET. Znam jeszcze kilka osób, które dają mu wotum zaufania. Użyj go samodzielnie. Zawijanie wywołań do zadań msbuild. Nie trzeba korzystać z integracji Ant.