Cargo:run如果指定containerId,则还需要指定containerUrl

时间:2015-05-04 02:35:45

标签: maven tomcat tomcat7 maven-3 cargo

我试图通过货物运行tomcat。已经安装了Tomcat。货物:部署工作正常,但当我尝试货物时:运行我得到以下错误

If you specify a containerId, you also need to specify a containerUrl.

如果我指定了containerURL,我会收到以下错误

[ERROR] Failed to execute goal org.codehaus.cargo:cargo-maven2-    
plugin:1.4.13:run (default-cli) on project ctm: Unable to parse configuration   
of mojo org.codehaus.cargo:cargo-maven2-plugin:1.4.13:run for parameter 
containerURL: Cannot find 'containerURL' in class org.codehaus.cargo.maven2.configuration.Container
...

这是我的Maven配置

<plugin>
    <groupId>org.codehaus.cargo</groupId>
    <artifactId>cargo-maven2-plugin</artifactId>
    <version>1.4.13</version>
    <configuration>
        <container>
            <type>existing</type>
            <containerId>${cargo.maven.containerId}</containerId>
             <home>${container.home}</home>
        </container>
        <configuration>
            <type>existing</type>
            <home>${container.home}</home>
        </configuration>
        <deployables>
            <deployable>
                <groupId>${project.groupId}</groupId>
                <artifactId>${project.artifactId}</artifactId>
                 <type>war</type>
                 <properties>
                     <context>example</context>
                 </properties>
             </deployable>
         </deployables>
        </configuration>
        <executions>
            <execution>
            <id>run</id>
            <configuration>
                <configuration>
                    <type>existing</type>
                </configuration>
            </configuration>
            <goals>
                <goal>run</goal>
            </goals>
        </execution>
    </executions>
</plugin>

这是我的个人资料

<profile>
    <id>developer-properties</id>
    <properties>
        <cargo.maven.containerId>tomcat7x</cargo.maven.containerId>
        <container.home>C:/apache-tomcat-7.0.35</container.home>
    </properties>
</profile>

根据货物文件; type“existing”应该使用现有的容器安装。除非类型是“独立的”,否则我认为我不需要containerURL。我不明白为什么我收到containerURL错误。

关于类型的文档位于:https://codehaus-cargo.github.io/cargo/Existing+Local+Configuration.html

1 个答案:

答案 0 :(得分:1)

我认为文档不清楚。我认为Restrictions.eq()总是使用独立的本地配置,因此描述

  

如果插件配置定义了一个独立的容器   本地配置,它将创建配置。

所以它可能忽略了你现有的本地配置。