2013-04-25 9 views
7

Stworzyłem projektów Maven wewnątrz Eclipse z tych archetypów:Maven vs. aspekty projektu Eclipse dla Java EE 6

  • EJB-javaee6
  • webapp-javaee6

Projekty były tworzone bez aspekty.

Czy ma sens przekształcanie takich projektów Maven w postaci fasetowe?

Które aspekty byłyby pomocne i które z nich mogą powodować problemy w projekcie Maven?

W szczególności: Czy któryś z poniższych aspektów projektu byłby w konflikcie z czymś, co leży w zakresie odpowiedzialności Maven?

  • Java
  • JavaScript
  • modułu EJB
  • Dynamiczny moduł Web
  • GlassFish deskryptorów wdrażania Pliki
  • JavaServer Faces

Mam wrażenie, że konwersja projekt Maven do fasetowa forma oznaczałaby mieszanie dwóch światów. Dlatego też NIE włączam JAKICHKOLWIEK aspektów projektu.

Ale gdzie pracuję, mamy przykłady projektów Maven, które są w formie fasetowej i zastanawiałem się, czy mogą być (bez ryzyka) korzyści dla niego.

Odpowiedz

9

Fałdy Eclipse i archetypy maven są ortogonalne - tj. Nie mają na siebie żadnego wpływu, a raczej nie znają się nawzajem. Możesz bezpiecznie dodać aspekty, jeśli ułatwi ci to pracę z zaćmieniem.

+0

Dziękuję bardzo za odpowiedź. Zaakceptowałem to, ponieważ jest to prawda przynajmniej w teorii – StaticNoiseLog

+0

W praktyce stwierdziłem, że integracja Mavena z m2e jest raczej krucha. Na przykład wtyczka m2e kładzie nacisk na egzekwowanie języka Java 1.6, chociaż używam programu GlassFish, który może obsługiwać moduły EJB Java 1.7. Z czystym Mavenem nie ma absolutnie żadnego problemu z budowaniem, pakowaniem i wdrażaniem (ręcznie). Próbowałem tego samego z NetBeans i działał sprawnie, po wyjęciu z pudełka. Odkryłem, że integracja Mavena w NetBeans jest znacznie lepsza dla projektów EJB. – StaticNoiseLog

+0

@StaticNoiseLog Nie ma za co. Masz rację co do m2e. Oddałem go niedawno na korzyść komendanta i uznałem, że jest to wygodniejsze. – kostja

1

Po pewnym eksperymentowaniu wydaje mi się, że mam coś, co działa (poza tym, że nie mogę zmusić m2e do zaakceptowania Java 1.7 dla EJB).

Wersje:

  • Eclipse Juno 4,2
  • m2e 1.3.1
  • GlassFish 3.1.2
  • JDK 1.7.0_17 (Oracle)

Ważne ZASTOSOWANIE UWAGA: Przy konfiguracji poniżej należy wyłączyć automat ic publikowanie do GlassFish ("Nigdy nie publikuj automatycznie") jeśli chcesz uruchomić Maven clean & zainstaluj. W przypadku zwykłej edycji i zapisywania w Eclipse można włączyć automatyczne publikowanie i wydaje się, że działa dobrze. Dopiero gdy uruchomiłem Maven jawnie (w Eclipse) napotkałem problemy.

Konfigurowanie projektu EJB z Maven Eclipse

Create Maven projects in Eclipse with these archetypes: 
ejb-javaee6 
ear-javaee6 
webapp-javaee6 

webapp-javaee6 
-------------- 
- Convert to faceted form, select GlassFish in Runtimes and enable: 
    - Dynamic Web Module 
    - GlassFish Deployment Descriptors Files 
    - Java 
    - JavaScript 
    - JavaServer Faces 
    Further configuration available... 
    - Content directory: src/main/webapp 
    - NOT checked: Generate web.xml deployment descriptor 
    - JSF Capabilities (all defaults): JSF 2.1 + PrimeFaces selected 
    CHECKED: "Include libraries with this application" 

ejb-javaee6 
----------- 
- Convert to faceted form, select GlassFish in Runtimes and enable: 
    - EJB Module 
    - GlassFish Deployment Descriptors Files 
    - Java 
    Further configuration available... 
    - NOT checked: Generate ejb-jar.xml deployment descriptor 

ear-javaee6 
----------- 
- Convert to faceted form, select GlassFish in Runtimes and enable: 
    - EAR 
    - GlassFish Deployment Descriptors Files 
    Further configuration available... 
    - Add EJB and WEB projects as dependencies 
    - Content directory: src/main/application (META-INF location used by Maven) 
    - NOT checked: Generate application.xml deployment descriptor 
Powiązane problemy