2012-09-03 12 views
13

Ostatnio próbowałem użyć maven-release-plugin, ponieważ jest to najwyraźniej zalecany sposób budowania i wydawania pakietów w uniwersum Maven.Używanie wtyczki maven-release w Eclipse

Jednak chciałem go użyć w środowisku Eclipse, ponieważ reszta mojego przepływu pracy jest oparta na środowisku Eclipse. I normalnie uruchomić komendy Maven poprzez wtyczki m2eclipse przewidzianego w ramach Eclipse Juno (4,2)

zauważyłem kilka osobliwości gdy próbowałem uruchomić „release: przygotowanie” w Eclipse:

  1. dodatkowe pliki były utworzone w głównym katalogu projektu - "pom.xml.releaseBackup" i "release.properties". Czy oni naprawdę tam należą? Czy mam poprawnie skonfigurowane katalogi wydania? Naprawdę nie uważam tych tymczasowych artefaktów za część mojego drzewa kodu źródłowego ......
  2. Numer pom.xml zostanie ręcznie nadpisany zaktualizowanym numerem wydania. Eclipse ostrzega i jest szczęśliwy, aby ponownie załadować zaktualizowaną wersję - ale czy jest to ogólnie bezpieczne?
  3. Przygotowanie ostatecznie kończy się niepowodzeniem podając błąd [ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.0:prepare (default-cli) on project clisk: Failed to invoke Maven build. Error configuring command-line. Reason: Maven executable not found at: C:\Users\Mike\git\clisk\EMBEDDED\bin\mvn.bat -> [Help 1] - prawdopodobnie dlatego, że korzystam z wbudowanego Maven excetable dostarczonego przez m2eclipse, a nie z linii poleceń. Sądzę, że mógłbym zainstalować także komendę z linii poleceń .... ale czy to rozsądne, czy może spowoduje więcej problemów?

Biorąc Tego rodzaju kwestie, Czy istnieje sposób, aby uzyskać Maven-release-plugin pracować płynnie wewnątrz Eclipse, czy mam po prostu zrezygnować i nadal to robić ręcznie zwalnia?

+0

* Czy nadal to robić ręcznie * oznaczają komunikaty nadal w wierszu poleceń z Maven zwolnienia, lub po prostu ręcznie pakiet wszystko razem? Jeśli to drugie, zdecydowanie sugerowałbym, żebyś przyjął ten pierwszy. Wtyczka wydania jest doskonała i zawsze najlepiej jest wydawać wydania ręcznie. –

Odpowiedz

6

Używam wtyczki wydania, ale tylko z wiersza poleceń.

Re. 1. Pliki kopii zapasowej, które tworzą wtyczki, są potrzebne, jeśli coś pójdzie nie tak w czasie przygotowania wydania. Zawsze możesz przywrócić przygotowane wydanie za pomocą polecenia release: rollback. Kiedy wykonasz polecenie release: perform, zostaną usunięte.

Re. 2. Wtyczka zmienia numer wersji z wersji snapshot, na przykład: 0.0.1-SNAPSHOT: aby wydać wersję: 0.0.1. Następnie po wydaniu: wersja wydania wydania zostaje przeniesiona do repozytorium maven i ponownie wypuszcza wersję wtyczki do wersji 0.0.2-SNAPSHOT. Teraz możesz użyć pełnej wersji (testowanej) w środowisku testowym lub produkcyjnym i wersji migawki do celów rozwijania.

Re. 3. Nie wiem, co jest przyczyną problemu, ale nie widzę problemu, używając wtyczki wydania z wiersza poleceń.

+0

Całkowicie zgadzam się na wszystkie punkty (ja również jestem użytkownikiem linii poleceń). –

+1

Jeśli chodzi o punkt # 3, uważam, że musisz zainstalować Mavena lokalnie, a następnie skonfigurować Eclipse, aby wiedział o jego istnieniu. Zobacz http://maven.40175.n5.nabble.com/Build-Failure-prepare-release-td510949.html na przykład kogoś, kto napotkał problem. –

3

Być może uda ci się przezwyciężyć wspomniany błąd, instalując linię poleceń Maven i skonfigurować Eclipse, aby używał tego zamiast osadzonego, wybierając Okno -> Preferencje -> Maven -> Instalacje, ale zgadzam się z radą wydawanie Twoich wydań poza Eclipse.

+0

Naprawdę naprawiłem mój problem! – Decoded

5

Dobrze wiem, ten link jest stary, ale aby pomóc niektórym kto reffers link o wydanie 3.

Maven zainstalować oddzielnie na lokalnym polu i podać ścieżkę do instalacji pod Windows-> Preferencje- -> maven -> Instalacja. Musisz także zdefiniować to samo w konfiguracji uruchamiania w Eclipse.

Załączony jest link, który wyjaśnia to samo.

http://maven.40175.n5.nabble.com/Build-Failure-prepare-release-td510949.html

+0

tak, to naprawdę pomaga uzyskać to działanie w środowisku Eclipse, a zmiana środowiska wykonawczego Maven w konfiguracji uruchamiania z EMBEDDED na EXTERNAL jest również ważna –

6

także mvn 3.3.3 instaluje mvn.plik cmd, zamiast pliku mvn.bat w systemie Windows.

Należy skopiować mvn.cmd do mvn.bat

+0

Rozwiązałem mój problem – Jeremy