Mój projekt wykorzystuje nodejs i java
Próbowałem zacząć od kompilacji node_js, a następnie zainstalować java (ponieważ jest to moduł npm)
ale skrypty do instalacji javy nie powiodły się, a ponadto nie sądzę, aby trzeba było je instalować, gdy istnieje już kompilacja z java.
powinienem zacząć od kompilacji java, a następnie zainstalować węzeł?
Próbuję tego
language: java
- oraclejdk8
language: node_js
node_js:
- "0.10"
który ignoruje pierwsze 2 wiersze i tworzy kompilację node_js, która ma java 7, a mój projekt używa java 8
Wypróbowałem tę odpowiedź dla Pythona
za pomocą
language: node_js
node_js:
- "0.10"
java: oraclejdk8
ale to nie zadziałało
Jak mogę dodać java 8?
Odpowiedzi:
Wydaje się, że teraz można uruchomić kilka języków w jednym pliku .travis.yml przy użyciu tej
matrix:include
funkcji. Na przykład moje repozytorium Github jest ułożone w następujący sposób:Oto plik .travis.yml, który uruchamia testy w językach Python, Java i Objective-C:
Wygląda na to, że możesz zbudować tyle różnych konfiguracji, ile chcesz, używając tej funkcji, traktując każdy wpis w macierzy jako konfigurację najwyższego poziomu. Oczywiście, jeśli masz jakieś parametry, które chcesz ustawić, a które dotyczą wszystkich języków, możesz to zrobić na najwyższym poziomie, tak jak robię to tutaj w
notifications:email
sekcji.Kiedy wszystko jest skonfigurowane, przy każdej kompilacji otrzymujesz coś takiego. Bum.
źródło
python: 3.5
do ustawiania wersji, użyłempython:\n - "3.5"
(zauważ, że są to dwie osobne linie) zgodnie z zaleceniami na oficjalnej stronie Travis-ci. Kompilacja nie powiodła się, ponieważ Travis próbuje odzyskaćpython-["3.5"]
(zwróć uwagę na[
i"
). Czy wiesz, dlaczego tak może być? Jedna linijka działa.$ travis lint ~/Desktop/test.yml Hooray, /Users/nathanf/Desktop/test.yml looks valid :)
W środowisku konstrukcyjnym Travis Java możesz
nvm
zarządzać środowiskami wykonawczymi Node.js :.travis.yml
Jeśli twoja wersja Node jest bardzo nowa, być może będziesz musiał ją zaktualizować
nvm
.Aby zaktualizować
nvm
, napisz to w swoim.travis.yml
:Powyższy przykład pokazuje, jak najpierw zaktualizować do
nvm v0.31
, a następnie uzyskaćNode v5
.źródło
Użyłem tego
.yml
:źródło
Mój projekt ma zaplecze Python / Django i nakładkę JS / Vue, jak poniżej:
Chodzi o to, aby uruchomić każdy zestaw testów w zadaniu macierzy , jeden dla testów Python / Django, a drugi dla testów JS:
Zobacz też
źródło
Nie możesz dodać wielu języków, co wyjaśnia zachowanie, które widzisz, a
node_js
ustawienie zostanie rozpoznane tylko w projekcie języka node. Możesz skorzystać z tego, co jest częściąnvm
TravisCI. Na przykład możesz dołączyć- nvm install 0.10 - nvm use 0.10
do swojejbefore_install
sekcji, aby pobrać najnowszą wersję v0.10.x węzła.źródło
Zgodnie z dokumentacją ,
Oto przykład produkcji.
źródło