2012-06-08 37 views
5

我对maven很陌生。所以我有一个项目与pom.xml文件。所以我用maven运行它,并且构建成功。我有玻璃鱼。 Glassfish已经分开运行。那么现在Glassfish运行该项目的下一步是什么?我的IDE是eclipse。如何在使用maven构建之后运行该项目

回答

7

你必须先告诉Maven构建WAR,查看这个插件:http://maven.apache.org/plugins/maven-war-plugin/

然后,您需要告诉maven如何部署到glassfish,您可以配置Maven执行插件来执行此操作(请参阅此处:http://mojo.codehaus.org/exec-maven-plugin/)。或者你可以看看一个专门用于集成maven和glassfish的自定义插件。这看起来很有前途,但我没有用过它:http://maven-glassfish-plugin.java.net/

Maven提供了很多开箱即用的基本功能,但大多数使用构建自动化的更酷的东西都是通过插件完成的。

更新

只需更新添加一个非常简单的双响炮,将做一个自动部署。注意:如果你只是运行一个“mvn clean install”,并且打包设置为'war',maven会为你构建.war文件并将其放置在目标/文件夹中。如果您只想开始使用,可以手动将其部署到glassfish。

下面是使用Maven的执行插件自动部署到Glassfish的作为构建的功能非常简单的POM的一部分:

<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 /箱)
  • ${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

+0

嗨保罗我很困惑。我对maven很陌生,所以如果这是微不足道的,请原谅我。那么当我运行pom.xml时,mvn编译会做什么?它是否创建耳塞包?如果是这样,那么这个软件包的位置在哪里,以便我可以将它部署到glassfish。 TNX。 – Sara

+0

莎拉,请张贴你的pom。 –

+0

添加了一点可能让你开始的pom。有几种不同的方法可以做到这一点。 –

2

Additonnaly,你应该有这个StackOverflow的线程一目了然,与Maven deployement在glassifsh处理:https://stackoverflow.com/a/1836691/1047365

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

我们可以向你解释Maven在做什么,制作等等,但是Sonatype做了一件很棒的工作,你可能会比我们做的更多地学习它。

问候。

+0

非常感谢,你们都是gr8,会经过他们:)。 – Sara

+0

不客气。我很乐意帮你:) –