如何从插件管理中更改maven war插件的配置?

时间:2012-12-05 14:47:15

标签: maven maven-plugin war

我试图弄清楚如何从父poms插件管理配置maven war插件。 下面是两个样本poms。这样,子项目的战争是使用附加到战争名称末尾的版本创建的,尽管我试图仅使用artifactId创建战争。

如果我将配置元素复制到子pom,那么仅使用artifactId创建war。

那么,我在这里失踪了什么?我认为插件管理部分只是针对这种东西吗?

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>deneme</groupId>
<artifactId>parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>pom</packaging>

<build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <warName>${project.artifactId}</warName>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
</build>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>child</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>child Maven Webapp</name>
<url>http://maven.apache.org</url>

<parent>
    <groupId>deneme</groupId>
    <artifactId>parent</artifactId>
    <version>0.0.1-SNAPSHOT</version>
</parent>

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
        </plugin>
    </plugins>
</build>

1 个答案:

答案 0 :(得分:1)

如果您需要更改由maven创建的最终war文件的名称,则需要在finalName中使用build标记。

<build>
    <directory>target</directory>
    <outputDirectory>target/classes</outputDirectory>
    <finalName>${artifactId}-${version}</finalName>
    <testOutputDirectory>target/test-classes</testOutputDirectory>
    <sourceDirectory>src/main/java</sourceDirectory>
    ....
</build>

Check this maven reference page