如何使用cargo-maven2-plugin部署到jboss as5?

时间:2010-07-13 16:32:19

标签: maven-2 jboss java-ee cargo maven-cargo

我尝试使用cargo-maven2-plugin,但是我没有在jboss5x中部署我的pom.xml是

<plugin>
            <groupId>org.codehaus.cargo</groupId>
            <artifactId>cargo-maven2-plugin</artifactId>
            <version>1.0.2</version>
            <configuration>
                <container>
                    <containerId>jboss51x</containerId>
                    <home>E:\JavaWorkingTools\JBoss\jboss-5.1.0.GA</home>
                    <log>${basedir}/target/jboss5.1.x.logs/cargo.log</log>
                    <timeout>300000</timeout> <!-- 5 minutes -->
                    <systemProperties>
                        <jboss.server.log.threshold>INFO</jboss.server.log.threshold>
                    </systemProperties>
                </container>
                <configuration>
                    <type>existing</type>
                    <home>${project.build.directory}/target/jboss51x</home>
                    <properties>
                        <cargo.jvmargs>-XX:PermSize=512m -XX:MaxPermSize=1024
                            -XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled
                            -XX:+CMSClassUnloadingEnabled</cargo.jvmargs>
                    </properties>
                </configuration>
                <deployer>
                    <type>installed</type>
                    <deployables>
                        <deployable>
                            <groupId>${project.groupId}</groupId>
                            <artifactId>${project.artifactId}</artifactId>
                            <type>war</type>

                            <!--
                                <pingURL>http://localhost:8080/${artifactId}</pingURL>
                                <pingTimeout>300000</pingTimeout>
                            -->
                            <pingURL>http://localhost:8080/${project.artifactId}/index.jsp</pingURL>
                            <properties>
                                <context>/${project.artifactId}</context>
                            </properties>
                        </deployable>
                    </deployables>
                </deployer>
            </configuration>
            <executions>
                <execution>
                    <id>start-container</id>
                    <phase>pre-integration-test</phase>
                    <goals>
                        <goal>start</goal>
                    </goals>
                </execution>
                <execution>
                    <id>stop-container</id>
                    <phase>post-integration-test</phase>
                    <goals>
                        <goal>stop</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>

我运行货物:deployer-start或cargodeployer-deploy错误

cargo:deployer-start错误信息是:

Failed to execute goal org.codehaus.cargo:cargo-maven2-plugin:1.0.2:deployer-start (default-cli) on project SSH2Maven: Execution default-cli of goal org.codehaus.cargo:cargo-maven2-plugin:1.0.2:deployer-start failed: Not supported -> [Help 1]

和cargodeployer-deploy

The Deployable state is thus unknown. ->

我读了Deploying to a running container,但我不知道如何在jboss5中解密webapp :(

1 个答案:

答案 0 :(得分:2)

您的配置有些奇怪。由于您使用的是已安装的现有容器,因此我希望看到其主目录的路径,而不是目标下的目录。这是我正在使用的配置:

  <plugin>
    <groupId>org.codehaus.cargo</groupId>
    <artifactId>cargo-maven2-plugin</artifactId>
    <version>1.0.2</version>
    <configuration>
      <container>
        <containerId>jboss51x</containerId>
        <append>false</append>
        <log>${project.build.directory}/logs/jboss51x.log</log>
        <output>${project.build.directory}/logs/jboss51x.out</output>
        <timeout>300000</timeout><!-- 5 minutes -->
      </container>
      <configuration>
        <type>existing</type>
        <home>/path/to/jboss-5.1.0.GA</home>
        <properties>
          <cargo.servlet.port>8080</cargo.servlet.port>
          <cargo.jboss.configuration>default</cargo.jboss.configuration>
          <cargo.rmi.port>1099</cargo.rmi.port>
          <cargo.logging>high</cargo.logging>
        </properties>
        <deployables>
          <!-- application to deploy -->
          <deployable>
            <groupId>${project.groupId}</groupId>
            <artifactId>myapp</artifactId>
            <type>war</type>
            <!-- 
            <properties>
              <context>acontext</context>
            </properties>
            -->
          </deployable>
        </deployables>
      </configuration>
    </configuration>
  </plugin>