Aby przeprowadzić deployment aplikacji na zdalnym serwerze GlassFish przy użyciu Mavena, polecam użyć pluginu: asadmin-maven-plugin.
Plugin ten umożliwia wykonywanie, także innych zadań które zazwyczaj wykonywane są z asadmin.
Aby skorzystać z dobrodziejstw pluginu należy dodać odpowiednie wpisy do pliku pom.xml.
Plugin repository:
<pluginRepositories>
<pluginRepository>
<id>asadmin-maven-plugin-releases-repository</id>
<name>asadmin-maven-plugin-releases-repository</name>
<url>http://asadmin-maven-plugin.googlecode.com/svn/trunk/repository/releases</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
Oraz sam plugin:
<plugin>
<groupId>org.n0pe.mojo</groupId>
<artifactId>asadmin-maven-plugin</artifactId>
<version>0.3</version>
<configuration>
<glassfishHome>/home/seba/glassfish</glassfishHome>
<domain>domain1</domain>
<host>example.com</host>
<port>4848</port>
<user>seba</user>
<appArchive>${project.build.directory}/${project.build.finalName}.${project.artifact.artifactHandler.extension} </appArchive>
<contextRoot>war-exemple</contextRoot>
</configuration>
</plugin>
Przed wykonaniem mvn asadmin:deploy, należy uaktualnić plik zawierający hasła dla asadmina. Plik znajduje się w katalogu domowym, w moim wypadku jest to: /home/seba/.asadminpass
Aby to zrobić wykonaj:
asadmin login --host example.com
Następnie podaj użytkownika i hasło do servera glassFish
Po wykonaniu tego polecenia zawartośc pliku powinna wyglądać mniejwięcej tak:
# Do not edit this file by hand. Use "asadmin login" command instead. asadmin://admin@localhost:4848 YWRtaW5hZG1pbg== asadmin://seba@example.com:4848 ZG9kYTEyMw==
Od tej pory możemy używać dość szerokiej palety poleceń oferowanych przez plugin:
- mvn asadmin:start-database
- mvn asadmin:start-domain
- mvn asadmin:deploy
- mvn asadmin:redeploy
- mvn asadmin:undeploy
- mvn asadmin:stop-domain
- mvn asadmin:stop-database
COMMENTS
No Comments