Como mudar propriedade outputFileNameMapping no pom do módulo EAR que esta como padrão?

JAVA EE

03/04/2018

Estou fazendo o Deploy de uma aplicação e ao empacotar os módulos EJB e WAR ele gera os arquivos utilizando como nome o artifactId mas ao gerar o application.xml do módulo EAR ele utiliza para os módulos o padrão da propriedade outputFileNameMapping. Não consigo fazer com que ele gere utilizando os nomes dos artefatos gerados pelo maven que esta saindo como $artifactId.jar e $artifactId.war. No wildfly ele da erro dizendo que não foi possível encontrar os arquivos Jar e War.

Segue abaixo a configuração do projeto no maven

- Configuração do projeto no maven:
<?xml version="1.0" encoding="UTF-8"?>
<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>br.com.diego</groupId>
    <artifactId>wms-ee8</artifactId>
    <version>0.0.1</version>

    <modules>
        <module>wmsee8core</module>
        <module>wmsee8web</module>
        <module>wmsee8eap</module>
    </modules>

    <packaging>pom</packaging>

    <properties>
        <version.wildfly-swarm>2018.3.3</version.wildfly-swarm>
        <maven.compiler.source>1.9</maven.compiler.source>
        <maven.compiler.target>1.9</maven.compiler.target>
    </properties>

    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>br.com.diego</groupId>
                <artifactId>wms-ee8-core</artifactId>
                <version>${project.version}</version>
                <type>ejb</type>
            </dependency>
            <dependency>
                <groupId>br.com.diego</groupId>
                <artifactId>wms-ee8-web</artifactId>
                <version>${project.version}</version>
                <type>war</type>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <finalName>${project.artifactId}</finalName>
        <pluginManagement>
            <plugins>
                <!-- The WildFly plugin deploys your ear to a local JBoss
                    AS container -->
                <!-- Due to Maven's lack of intelligence with EARs we need
                    to configure the wildfly maven plugin to skip deployment for all modules.
                    We then enable it specifically in the ear module. -->
                <plugin>
                    <groupId>org.wildfly.plugins</groupId>
                    <artifactId>wildfly-maven-plugin</artifactId>
                    <version>1.2.0.Final</version>
                    <configuration>
                        <hostname>${wildfly-hostname}</hostname>
                        <port>${wildfly-port}</port>
                        <username>${wildfly-username}</username>
                        <password>${wildfly-password}</password>
                    </configuration>
                    <executions>
                        <execution>
                            <phase>package</phase>
                            <goals>
                                <goal>deploy</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-ejb-plugin</artifactId>
                    <version>3.0.0</version>
                    <configuration>
                        <ejbVersion>3.2</ejbVersion>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>


- Configuração do módulo EAR
<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>wms-ee8</artifactId>
        <groupId>br.com.diego</groupId>
        <version>0.0.1</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>wms-ee8-eap</artifactId>
    <packaging>ear</packaging>

    <dependencies>
        <dependency>
            <groupId>br.com.diego</groupId>
            <artifactId>wms-ee8-core</artifactId>
            <type>ejb</type>
        </dependency>
        <dependency>
            <groupId>br.com.diego</groupId>
            <artifactId>wms-ee8-web</artifactId>
            <type>war</type>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-ear-plugin</artifactId>
                <version>3.0.0</version>
                <configuration>
                    <version>7</version>
                    <defaultLibBundleDir>lib</defaultLibBundleDir>
                </configuration>
            </plugin>
        </plugins>
    </build>

</project>


- Configuração do módulo EJB
<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>wms-ee8</artifactId>
        <groupId>br.com.diego</groupId>
        <version>0.0.1</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>wms-ee8-core</artifactId>
    <packaging>ejb</packaging>

    <dependencies>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>8.0</version>
        </dependency>
    </dependencies>


    <build>
        <plugins>
            <plugin>
                <artifactId>maven-ejb-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <ejbVersion>3.2</ejbVersion>
                </configuration>
            </plugin>
        </plugins>
    </build>
</project>


- Configuração do módulo WAR
<?xml version="1.0" encoding="UTF-8"?>
<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">
    <parent>
        <artifactId>wms-ee8</artifactId>
        <groupId>br.com.diego</groupId>
        <version>0.0.1</version>
    </parent>
    <modelVersion>4.0.0</modelVersion>

    <artifactId>wms-ee8-web</artifactId>
    <packaging>war</packaging>

    <dependencies>
        <dependency>
            <groupId>br.com.diego</groupId>
            <artifactId>wms-ee8-core</artifactId>
            <type>ejb</type>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-api</artifactId>
            <version>8.0</version>
        </dependency>
        <dependency>
            <groupId>javax.mvc</groupId>
            <artifactId>javax.mvc-api</artifactId>
            <version>1.0-edr2</version>
        </dependency>
        <dependency>
            <groupId>org.mvc-spec.ozark</groupId>
            <artifactId>ozark-core</artifactId>
            <version>1.0.0-m03</version>
        </dependency>
        <dependency>
            <groupId>org.mvc-spec.ozark</groupId>
            <artifactId>ozark-jersey</artifactId>
            <version>1.0.0-m03</version>
        </dependency>
        <dependency>
            <groupId>org.glassfish.jersey.containers</groupId>
            <artifactId>jersey-container-servlet</artifactId>
            <version>2.23.2</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
        
Diego Silva

Diego Silva

Curtidas 0

Respostas

Marcio Souza

Marcio Souza

03/04/2018

Desculpa, mas onde está a propriedade outputFileNameMapping nessas configurações que eu não encontrei?
GOSTEI 0
Marcio Souza

Marcio Souza

03/04/2018

Veja se as instruções que tem nesse link, na página do Maven, não te ajuda a alterar esse valor para a propriedade outputFileNameMapping .
http://maven.apache.org/plugins/maven-ear-plugin/examples/customize-file-name-mapping.html
GOSTEI 0
Diego Silva

Diego Silva

03/04/2018

E ae Ballem, blz?

Então nesse caso eu não setei a a propriedade outputfilenaming exatamente para sair padrão que é groupId-artifactId-version.extension que é o que esta indo para o application.xml mas os arquivos jar e war estão sendo empacotados apenas com o artifactId.extension ai quando faço o deploy no wildfly ele diz que não consegue encontrar o jar e o war. Quando eu inclui a propriedade é como se ele ignorasse ela e mantivesse o padrão
GOSTEI 0
POSTAR