2010-02-10 19 views
8

I nie wydają się uzyskać wtyczki Maven GlassFish pracy dla życia mnie:Maven Wbudowany GlassFish wtyczki

<project> 
    ... 
    <pluginRepositories> 
    <pluginRepository> 
     <id>glassfish-repository</id> 
     <name>Java.net Repository for Glassfish</name> 
     <url>http://download.java.net/maven/glassfish</url> 
     <layout>default</layout> 
     <snapshots> 
     <enabled>true</enabled> 
     <updatePolicy>never</updatePolicy> 
     </snapshots> 
    </pluginRepository> 
    </pluginRepositories> 
    ... 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.glassfish</groupId> 
     <artifactId>maven-embedded-glassfish-plugin</artifactId> 
     <version>3.0</version> 

     <configuration> 
      <goalPrefix>glassfish</goalPrefix> 
      <app>${artifactId}.war</app> 
      <contextRoot>${context.root}</contextRoot> 
      <port>${http.port}</port> 
     </configuration> 
     </plugin> 
     ... 
    </plugins> 
    </build> 
</project> 

Kiedy biegnę mvn glassfish:run, to szuka innej wtyczki i nie można go znaleźć:

[INFO] The plugin 'org.apache.maven.plugins:maven-glassfish-plugin' does not exist or no valid version could be found 

Wszelkie pomysły?

Odpowiedz

13

Nie powołujesz się na odpowiednią wtyczkę. Powinno być:

mvn embedded-glassfish:run 

Właściwie używam go tak: (z tego samego repozytorium wtyczek ty zadeklarowanej):

<plugins> 
    <plugin> 
    <groupId>org.glassfish</groupId> 
    <artifactId>maven-embedded-glassfish-plugin</artifactId> 
    <version>3.0</version> 
    <configuration> 
     <goalPrefix>glassfish</goalPrefix> 
     <app>target/test.war</app> 
     <port>8080</port> 
     <contextRoot>test</contextRoot> 
    </configuration> 
    <executions> 
     <execution> 
     <phase>package</phase> 
     <goals> 
     <goal>run</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 
</plugins> 

UPDATE: wszelki wypadek pełną nazwę z ten plugin będzie:

mvn org.glassfish:maven-embedded-glassfish-plugin:3.0:run 

ale stosując krótką nazwę pracuje dla mnie.

+0

Pascal, dziękuję za odpowiedź, ale gdy próbuję wykonać to polecenie powyżej, nadal otrzymuję wtyczkę nie można znaleźć: [INFO] Wtyczka 'org.apache.maven.plugins: maven-embedded-glassfish-plugin "nie istnieje lub nie można znaleźć prawidłowej wersji –

+0

@Walter Proszę zamieścić cały pom, ponieważ to działa dla mnie. –

+1

Pascal - przepraszam za spóźnioną odpowiedź, ale w końcu wyemigrowałem do Glassfish, ponieważ jest to jeden z nielicznych kontenerów zgodnych z Java EE 6. Ta konfiguracja działa dobrze. Musiałem ręcznie zainstalować artefakty, aby działały, ale działają teraz. –

0

Ten problem wynika z faktu, że istnieją dwie różne wtyczki maven-glassfish o tej samej nazwie. Spróbuj użyć

mvn org.glassfish:maven-glassfish-plugin:run 

Szczegółowy explanatation tego problemu można znaleźć here.

+1

Myślę, że ten blog post jest nieaktualne wtyczki osadzony jest Maven zatopionych-GlassFish-plugin, nie maven- glassfish-plugin. Zobacz http://blogs.sun.com/sirajg/entry/using_maven_plugin_for_v3 –

+0

@Pascal Tak, masz rację. Ta wersja wydaje się być uszkodzona. – cetnar

3

@Walter White (nie mogę/nie wiem, jak odpowiedzieć na Twój komentarz, więc odpowiadam): Przeczytałem, że rozproszone WAR to not fully supported by embedded GlassFish v3.

Osobiście niecierpliwie oczekuję wersji 3.1 z obsługą programu Timer i MessageDriven. Mam nadzieję, że również wsparcie dla usług sieciowych zostanie uwzględnione. Czy ktokolwiek ma pojęcie o ETA dla wersji 3.1?

PS: mvn org.glassfish:maven-embedded-glassfish-plugin:3.0:run dla mnie. Włączy to teraz w odpowiedni cykl życia testu integracyjnego.

0

zobaczyć na github przykład roboczych

pakiet

mvn osadzony-GlassFish: uruchom

<dependencies> 
    <dependency> 
     <groupId>javax</groupId> 
     <artifactId>javaee-web-api</artifactId> 
     <version>7.0</version> 
    </dependency> 
</dependencies> 

<build> 
    <plugins> 

     <plugin> 
      <groupId>org.glassfish.embedded</groupId> 
      <artifactId>maven-embedded-glassfish-plugin</artifactId> 
      <version>3.1.2.2</version> 
      <configuration> 
       <app>target/${project.artifactId}-${project.version}</app> 
       <port>8080</port> 
       <contextRoot>${project.artifactId}</contextRoot> 
      </configuration> 
      <dependencies> 
       <dependency> 
        <groupId>org.glassfish.main</groupId> 
        <artifactId>simple-glassfish-api</artifactId> 
        <version>4.0-b79</version> 
       </dependency> 
       <dependency> 
        <groupId>org.glassfish.main.extras</groupId> 
        <artifactId>glassfish-embedded-all</artifactId> 
        <version>4.0-b83</version> 
       </dependency> 
      </dependencies> 
     </plugin> 
     <plugin> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.1</version> 
      <configuration> 
       <source>1.8</source> 
       <target>1.8</target> 
       <encoding>UTF-8</encoding> 
      </configuration> 
     </plugin> 
    </plugins> 

</build> 
<pluginRepositories> 
    <pluginRepository> 
     <id>maven.java.net</id> 
     <name>Java.net Repository for Maven</name> 
     <url>https://maven.java.net/content/groups/promoted/</url> 
    </pluginRepository> 
    <pluginRepository> 
     <id>maven2-repository.dev.java.net</id> 
     <name>Java.net Repository for Maven</name> 
     <url>http://download.java.net/maven/glassfish/</url> 
    </pluginRepository> 
</pluginRepositories> 
Powiązane problemy