【发布时间】:2016-03-02 04:43:48
【问题描述】:
我是新手。所以我有一个带有 pom.xml 文件的项目。所以我用maven运行它并且构建成功。我有玻璃鱼。 Glassfish 已经单独运行。那么现在用 Glassfish 运行项目的下一步是什么?我的IDE是eclipse。
【问题讨论】:
我是新手。所以我有一个带有 pom.xml 文件的项目。所以我用maven运行它并且构建成功。我有玻璃鱼。 Glassfish 已经单独运行。那么现在用 Glassfish 运行项目的下一步是什么?我的IDE是eclipse。
【问题讨论】:
你必须先告诉 Maven 构建 WAR,查看这个插件:http://maven.apache.org/plugins/maven-war-plugin/。
然后你需要告诉 maven 如何部署到 glassfish,你可以配置一个 Maven 执行插件来做到这一点(见这里:https://www.mojohaus.org/exec-maven-plugin/)。或者您可以四处寻找专门用于将 maven 与 glassfish 集成的自定义插件。这个看起来很有前途,但我没用过:http://maven-glassfish-plugin.java.net/。
Maven 提供了许多开箱即用的基本功能,但大多数具有构建自动化功能的更酷的东西都是通过插件完成的。
更新
只是更新以添加一个非常简单的 Pom 来进行自动部署。注意:如果你只是运行“mvn clean install”,打包设置为“war”,maven 将为你构建 .war 文件并将其放置在 target/ 文件夹中。如果您只是想开始使用,可以手动将其部署到 glassfish。
下面是一个非常简单的 pom 的一部分,它使用 Maven 执行插件作为构建功能自动部署到 glassfish:
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>exec</goal>
</goals>
<phase>install</phase>
</execution>
</executions>
<configuration>
<executable>${path-to-asadmin-util}</executable>
<arguments>
<argument>deploy</argument>
<argument>--user=${username}]</argument>
<argument>--passwordfile=${password-file}</argument>
<argument>--host=localhost</argument>
<argument>--port=4848</argument>
<argument>target/${project.name}</argument>
</arguments>
</configuration>
</plugin>
</plugins>
</build>
这基本上只是调用 glassfish asadmin 实用程序 [1] 上的部署命令。您需要填写以下变量:
${path-to-asadmin-util} --> 这是您的 asadmin 实用程序的路径
(通常在 glassfish_home/bin 中)${username} --> glassfish 管理员用户名${password-file} --> 登录 glassfish 的密码文件
管理员[2]${project.name} --> 你的战争名称如果你想变得更复杂,我建议看看这个帖子:GlassFish v3 and glassfish-maven-plugin (Mac)。
[1] - http://docs.oracle.com/cd/E18930_01/html/821-2433/deploy-1.html#SJSASEEREFMANdeploy-1
[2] - http://docs.oracle.com/cd/E18930_01/html/821-2435/ghgrp.html#ghytn
【讨论】:
另外,你应该看看这个 StackOverflow 线程,处理 glassifsh 中的 maven 部署:https://stackoverflow.com/a/1836691/1047365。
为了进一步了解 Maven,您真的应该阅读这本(免费)书:http://www.sonatype.com/books/mvnref-book/reference/。这是 Maven 的参考。
我们可以向您解释 Maven 正在做什么、生产等等……但 Sonatype 做得很棒,您可能会通过阅读它学到比我们更多的东西!
问候。
【讨论】: