2009-10-28 15 views
5

Mam wielomodułowy projekt Maven w repozytorium Subversion z wieloma programistami pracującymi nad nim z Eclipse + M2Eclipse. Teraz, jeśli programista dodaje moduł, inni muszą wykonać aktualizację SVN z wiersza poleceń (ponieważ Eclipse nie widzi wspólnego katalogu głównego projektu Maven) i ręcznie zaimportować nowy moduł jako projekt Eclipse.Importuj nowy moduł Mavena w Eclipse automatycznie

Czy można to zrobić automatycznie?

Moja struktura projektu wygląda następująco:

 
Working Copy     Eclipse Workspace 

working copy root -X-> 
+- parent   --->  +- parent 
| \- pom.xml    | \- pom.xml 
+- child1   --->  +- child1 
| \- pom.xml    | \- pom.xml 
+- child2   --->  +- child2 
    \- pom.xml     \- pom.xml 

Odpowiedz

1

Można mieć pom w katalogu głównym, który będzie miał rodziców, child1, child2, etc jako moduły. Po aktualizacji SVN czy istnieje nowy moduł został dodany, można uruchomić

mvn eclipse:clean eclipse:m2eclipse 

z przycisku narzędzia Eclipse (prawo przycisków debugowania i uruchomić)

Jeśli używasz TortoiseSVN można ustawić post-update client side hook, ale każdy programista będzie musiał ustawić go niezależnie.

+0

Myślę, że pierwotne pytanie dotyczyło wtyczki Eclipse (M2Eclipse), a nie mave-eclipse-plugin. –

+0

Nie ma potrzeby dodawania pom do katalogu głównego, aby uruchomić kompilację wielomodułową (i OP używa płaskiego układu, aby móc zaktualizować nadrzędny plik pom.xml z zaćmienia, jak sądzę). Post-udpate hak po stronie klienta jest pomysłem, ale nie rozwiąże całego problemu. –

0

Projekt może być buckminster może pomóc sprawdzić FAQ. Mam nadzieję, że pomaga

0

Czy można to zrobić automatycznie?

Co zrobić? Aby uniknąć importowania nowego modułu ręcznie jako projektu Eclipse? AFAIK, obecnie nie jest to obsługiwane, musisz dodać to ręcznie (powinno być możliwe programowanie, jednak istnieje takie żądanie wtyczki Maven Eclipse - MECLIPSE-75 - nie można znaleźć dla Maven Intergration for Eclipse).

To powiedziawszy, czy dodanie modułu naprawdę często się zdarza? Twoja sytuacja może być inna, ale z mojego doświadczenia szybko osiągniesz stabilny punkt, a dodanie modułu stanie się czymś niezwykłym.

Niemniej jednak dobra komunikacja zespołowa jest najlepszym rozwiązaniem, z którym miałem do czynienia. Gdy programista dodaje nowy moduł, jest obowiązkiem, aby inni członkowie zespołu wiedzieli, że wprowadził zmianę i opisał wymagane kroki, aby uwzględnić modyfikację. Nikt nie jest wszechwiedzący, nikt nie potrafi czytać w czyimś umyśle, aktywna komunikacja jest kluczem do dobrej współpracy.

+0

Za chwilę przeprowadzimy gruntowny remont produktu, dzięki czemu projekty będą przychodzić i odchodzić w nadchodzących miesiącach. Jest wielu programistów pracujących nad projektami i nie chciałbym, aby te zmiany za każdym razem je powstrzymywały. –

+0

Zmierzyłem się z tą sytuacją w projekcie z ponad 100 programistami rozmieszczonymi geograficznie i, jak powiedziałem, komunikacja jest najlepszą bronią. Mimo to nadal uważam, że stosunkowo szybko osiągniesz stabilny punkt. –

0

można również użyć maven-eclipse-plugin

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-eclipse-plugin</artifactId> 
      <configuration> 
       <wtpversion>2.0</wtpversion> 
       <projectNameTemplate>[artifactId]-[version]</projectNameTemplate> 
      </configuration> 
     </plugin> 

odświeżyć projekt po zaimportowaniu go z svn

lub można również kliknąć prawym przyciskiem myszy projekt i kliknij „umożliwi zarządzanie zależność”

Powiązane problemy