2013-07-11 37 views
5

Widzę wiele nowszych wtyczek Mavena dla JavaScriptu wymagającego instalacji NodeJS na komputerze, na którym ma miejsce kompilacja (zarówno serwery lokalne, jak i CI). Na przykład: yeoman-maven-plugin, npm-maven-plugin, itp.Instalowanie NodeJS za pośrednictwem Mavena

Pytanie brzmi: czy sensowne jest sprawdzenie istnienia NodeJS i zainstalowanie go, jeśli brakuje go przez Maven jako zależność?

Dodatkowe pytanie: jeśli uważasz, że to dobry pomysł, w jaki sposób wykonasz to zadanie?

+0

Myślę, że to byłby okropny pomysł. Czy dzięki tej logice nie spodziewano się instalacji Rubiego, Pythona lub innego środowiska, jeśli projekt zależy od nich? Jeśli używana wtyczka jest po prostu opakowaniem, na przykład z uruchomionymi jsHint lub testami jaśminowymi itp., Możesz zamiast tego szukać odpowiedniej, samodzielnej wtyczki. Z drugiej strony, jeśli jest to projekt prawdziwego węzła, to dlaczego traktować węzeł jako obywatel drugiej kategorii? –

+0

Większość wtyczek maven jest owijaczami/adapterami do rodzimych narzędzi, gdy nie są oparte na Javie. W wielu przypadkach istnieją przyzwoite alternatywy (WRO4J jest świetnym przykładem), ale wciąż widzę nowe świetne narzędzia oparte na węźle iw wielu przypadkach cienkie wrappery Maven, które wymagają, aby Node był już obecny w systemie. – dbrin

+0

To, co zwykle robiliśmy, to nie próbować instalować NODE, ale konfigurować profile, które definiują, gdzie znaleźć NODE. Tak więc dla profilu "dev-local" zakładamy, że masz nodejs na swojej ścieżce. Następnie dla serwera CI zakładamy, że jest to /bin/node-0.10.17/bin itd. –

Odpowiedz

4

Możesz wypróbować frontend-maven-plugin (przez https://stackoverflow.com/a/19600777/1024571). Zgodnie z dokumentacją:

tej wtyczce Downloads/instaluje węzeł i KMP lokalnie dla danego projektu, prowadzi KMP zainstalować, Grunt i/lub Karmę

zasadzie to pozwala na użycie węzła jako część kompilacji przetwarzanie bez konieczności instalowania go globalnie na komputerze kompilacji.

+0

Dzięki Jeff. Wygląda to bardzo obiecująco. Spróbuję tego. – dbrin

Powiązane problemy