GlassFish v3 und glassfish-maven-plugin (Mac)
Ich versuche, die Verwendung des glassfish-maven-plugin (https://maven-glassfish-plugin.dev.java.net/) mit GlassFish v3 (ich bin auf einem Mac und mit Eclipse) und ich kann nicht scheinen, um meine web-app bereitstellen. Ich laufen in:
Das Master-Passwort ist erforderlich, um starten Sie die Domäne. Keine Konsole, keine Rückfrage möglich. Sie sollten entweder die Domäne erstellen mit --savemasterpassword=true, oder geben Sie ein Kennwort mit der Datei --passwordfile option.
Hier ist der relevante Teil meiner POM-Datei.
<profiles>
<profile>
<id>development</id>
<activation>
<property>
<name>phase</name>
<value>development</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.glassfish.maven.plugin</groupId>
<artifactId>maven-glassfish-plugin</artifactId>
<version>2.2-SNAPSHOT</version>
<configuration>
<glassfishDirectory>${glassfish.directory}</glassfishDirectory>
<user>${glassfish.user}</user>
<passFile>${glassfish.directory}/domains/${project.artifactId}/config/domain-passwords</passFile>
<domain>
<name>${project.artifactId}</name>
</domain>
<components>
<component>
<name>${project.artifactId}</name>
<artifact>${project.build.directory}/artifacts/${project.artifactId}.war</artifact>
</component>
</components>
</configuration>
</plugin>
</plugins>
</build>
<pluginRepositories>
<pluginRepository>
<id>ocean</id>
<url>http://maven.ocean.net.au/snapshot</url>
<releases>
<enabled>false</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
Hier ist der start-Domäne Befehl Maven ausgeführt wird.
asadmin --host localhost --port 4848 --user admin --passwordfile /var/folders/sk/skcc8rAVGSynOBBaOwWN3U+++TI/-Tmp-/mgfp5377058868244877698.tmp --interactive=false --echo=true --terse=true start-domain --debug=false --domaindir /Anwendungen/GlassFish/v3/glassfish/domains --help=false --upgrade=false --verbose=false mvnrepo
Den --passwordfile ist mithilfe einer temp-Datei, so dass ich vermute, dass ist das problem. Für einige Grund, der passFile-parameter nicht funktioniert.
Irgendwelche Ideen? Ich bin ich falsch mit meiner Annahme?
- haben Sie sicherzustellen, dass Ihre pom-Variablen werden korrekt aufgelöst?
- Ja, ich wollte sicherstellen, dass meine POM Variablen wurden der Lösung.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der Fair Komplette Konfiguration, Beispiel, es ist in der Tat ein Verweis auf die
<passFile>
element, sondern die Dokumentation der verschiedenen Ziele nicht erwähnt, dieses element und finden Sie<passwordFile>
statt (siehe zum Beispiel glassfish:start-domain oder glassfish:Deployment). Also, versuchen Sie, aktualisieren Sie die Konfiguration des plugins in Ihrem Profil entsprechend:Als seitliche Anmerkung, ich empfehle das maven-embedded-glassfish-plugin die es erlaubt, zu laufen, Glassfish in einer einzigen JVM mit seiner embedded-API. Sehr schön. Sehen Mit dem maven-plugin für v3 embedded glassfish für mehr details.
UPDATE: ich habe einige weitere Tests und konnte es nicht wirklich reproduzieren Sie Ihr problem auf meinem Rechner (seufz).
Ersten, ich habe eine neue domain, indem Sie den folgenden Befehl ausführen (vom
<glassfish_home>/bin
):Dann habe ich eine neue webapp mittels maven die webapp archetype:
Und aktualisiert die
pom.xml
des frisch erstellten webapp wie folgt:Mit diesem setup läuft
mvn glassfish:start-domain
erzeugt die folgende Ausgabe:Wie Sie sehen können, die
--passwordfile
option übergeben wird korrekt mit der Datei spezifiziert in der POM. In anderen Worten, alles funktioniert wie erwartet. Vielleicht versuchen Sie es mit einem hart codierten Pfad zu der Passwort-Datei zu Debuggen, diese Einstellung, es sollte nur funktionieren!asadmin
Befehl, den Sie angenommen haben, dass<glassfish_home>
ist das root-Verzeichnis der glassfish-distribution (z.B./Users/foo/glassfish3
). Dann in der POM-Datei, die Sie angenommen haben, dass es die<ROOT>/glassfish
Verzeichnis (z.B.Users/foo/glassfish3/glassfish
).Es nahm mich eine Weile, um zu realisieren, dass ich versehentlich Links die "adminPassword" - Eigenschaft in das Maven-Glassfish-Plugin-Konfiguration (also ich hatte beide adminPassword und passwordFile set). Das plugin noch verwendet die temporäre passwordfile statt meiner eigenen, was in den oben genannten Fehler.
Nur für den Fall, jemand ist so dumm wie mich 😉