plug-in Glassfish Maven Embarqués
-
19-09-2019 - |
Question
Je ne peux pas sembler obtenir le plugin Glassfish Maven travaillant pour la vie de moi:
<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>
Quand je lance mvn glassfish:run
, il est à la recherche d'un autre plugin et ne peut pas le trouver:
[INFO] The plugin 'org.apache.maven.plugins:maven-glassfish-plugin' does not exist or no valid version could be found
Toutes les idées?
La solution
Vous n'êtes pas invoquer le plugin droit. Il devrait être:
mvn embedded-glassfish:run
En fait, je l'utilise comme ceci: (avec le même référentiel de plug-in que vous avez déclaré):
<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>
Mise à jour: Juste au cas où, le nom complet de ce plugin serait:
mvn org.glassfish:maven-embedded-glassfish-plugin:3.0:run
Mais en utilisant le nom court fonctionne pour moi.
Autres conseils
@Walter blanc (ne peut pas / ne sais pas comment répondre à votre commentaire afin que je réponds à la place): J'ai lu que de la guerre sont dispersés pas entièrement pris en charge par embedded GlassFish v3 .
Personnellement, je suis attend avec impatience v3.1 avec le soutien de la minuterie et MessageDriven. Espérons que le soutien du service Web sera également inclus. Quelqu'un arrive d'avoir la moindre idée de l'ETA pour v3.1?
PS: mvn org.glassfish:maven-embedded-glassfish-plugin:3.0:run
travaille pour moi. Est-ce que le brancher dans un cycle de vie intégration test maven correcte maintenant.
Voir exemple de travail github
mvn package intégré-glassfish: run
<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>