如何使用maven构建后运行项目

时间:2012-06-08 22:03:49

标签: eclipse maven glassfish

我是maven的新手。所以我有一个带pom.xml文件的项目。所以我用maven运行它,构建成功。我有玻璃鱼。 Glassfish已经单独运行。那么现在使用Glassfish运行项目的下一步是什么?我的IDE是eclipse。

3 个答案:

答案 0 :(得分:8)

你必须先告诉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文件并将其放在目标/文件夹中。如果您只是想开始使用,可以手动将其部署到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]上调用deploy命令。您需要填写以下变量:

  • ${path-to-asadmin-util} - &gt;这是asadmin实用程序的路径 (通常在glassfish_home / bin中)
  • ${username} - &gt; glassfish管理员用户名
  • ${password-file} - &gt;用于登录glassfish的密码文件 管理员[2]
  • ${project.name} - &gt;你的战争名称

如果你想变得更复杂,我建议你看一下这个帖子: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

答案 1 :(得分:3)

Additonnaly,你应该看一下这个StackOverflow线程,处理glassifsh中的maven deployement:https://stackoverflow.com/a/1836691/1047365

为了进一步了解Maven,你应该真正阅读这本(免费)书:http://www.sonatype.com/books/mvnref-book/reference/。这是Maven的参考。

我们可以向你解释Maven正在做什么,制作等等......但是Sonatype做了很棒的工作,你可能会比以往任何时候都学到更多的东西!

问候。

答案 2 :(得分:0)