Ich habe ein dynamisches Webmodulprojekt, das als Maven-Projekt mit M2E konfiguriert ist. Ich benutze nur Eclipse Embedded Maven, um irgendetwas mit dem Projekt zu tun, also keine Befehlszeile säubert etc.Dynamisches Webmodul in Eclipse Mars mit M2E unstable config beim Ändern von Versionen in Projektfacetten
Ich benutze Tomcat 7 und das erste Problem, das ich habe, ist, dass M2E die dynamische Web-Modul-Facette auf 3.1
wenn ich aktualisieren wird Führen Sie maven->update project...
aus, damit ich dann nicht mehr auf Tomcat bereitstellen kann.
Ich kann die Facette nicht auf 3.0
herabstufen. Eclipse sagt nur etwas wie "Kann das nicht tun". Allerdings kann ich die Facette abwählen und dann apply
, und dann auf 3.0
setzen.
An diesem Punkt kann ich dann die App in Tomcat bereitstellen.
Doch sobald ich maven->update project...
wieder auf dem Projekt (genannt zum Beispiel Foo
) ausführen, wird das Projekt Facette 3.1
aktualisiert und schafft ein neues Projekt FooEAR
mit dem Krieg Modul in der EAR-Entfaltungsvorrichtung genannt.
Was ist falsch in meiner Konfiguration? (Ich habe kein Projekt Facette EAR überprüft)
[Update] Immer noch die seltsame myprojectEAR Projekt auf einem Nicht-Krieg-Projekt.
Eclipse-Mars 4.5.1
M2E 1.6.2
pom.xml:
<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>
<parent>
<groupId>com.foo</groupId>
<artifactId>foo-parent</artifactId>
<version>1.0.1-SNAPSHOT</version>
</parent>
<artifactId>foo</artifactId>
<version>0.0.6-SNAPSHOT</version>
<packaging>war</packaging>
<properties>
<targetRepositoryId>init later</targetRepositoryId>
<targetRepositoryUrl>init later</targetRepositoryUrl>
</properties>
<build>
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>false</filtering>
</resource>
<resource>
<directory>${basedir}/src/main/resources</directory>
<targetPath>${basedir}/src/main/javadoc</targetPath>
<filtering>true</filtering>
<includes>
<include>**/overview.html</include>
</includes>
</resource>
<resource>
<directory>${basedir}/thunder</directory>
<targetPath>${project.build.directory}/thunder</targetPath>
<filtering>true</filtering>
<includes>
<include>*</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
<addClasspath>true</addClasspath>
<classpathPrefix>dependency-jars/</classpathPrefix>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<warSourceDirectory>src/main/webapp</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptor>src/assembly/zip-file.xml</descriptor>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>ZipOntoNexus</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/${project.build.finalName}.zip</file>
<groupId>${project.groupId}</groupId>
<artifactId>${project.artifactId}-zip</artifactId>
<version>${project.version}</version>
<repositoryId>${targetRepositoryId}</repositoryId>
<url>${targetRepositoryUrl}</url>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<groups>com.foo.IntegrationTest</groups>
</configuration>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
</goals>
<configuration>
<includes>
<include>**/*.class</include>
</includes>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.17</version>
<configuration>
<configLocation>${basedir}/checkstyle/checkstyle.xml</configLocation>
<propertiesLocation>${basedir}/checkstyle/checkstyle-maven.properties</propertiesLocation>
</configuration>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>run</goal>
</goals>
<phase>prepare-package</phase>
<configuration>
<tasks>
<delete failonerror="false">
<fileset
dir="${project.build.directory}/${project.build.finalName}"
includes="version*.txt" />
</delete>
<mkdir
dir="${project.build.directory}/${project.build.finalName}" />
<touch
file="${project.build.directory}/${project.build.finalName}/version-${project.version}.txt" />
</tasks>
</configuration>
</execution>
<execution>
<id>debug deploy</id>
<goals>
<goal>run</goal>
</goals>
<phase>verify</phase>
<configuration>
<tasks if="project.version SNAPSHOT">
<property name="targetRepositoryUrl"
value="${project.distributionManagement.snapshotRepository.url}" />
<echo message="url=${targetRepositoryUrl}" />
</tasks>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<!-- add-test-source goal executed at generate-test-sources phase. -->
<!-- http://www.petrikainulainen.net/programming/maven/integration-testing-with-maven/ -->
<executions>
<execution>
<id>add-integration-test-sources</id>
<phase>generate-test-sources</phase>
<goals>
<goal>add-test-source</goal>
</goals>
<configuration>
<sources>
<source>src/integration-test/java</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.pitest</groupId>
<artifactId>pitest-maven</artifactId>
<version>1.1.5</version>
<configuration>
<targetClasses>
<param>com.foo.*</param>
</targetClasses>
<targetTests>
<param>com.foo.*</param>
</targetTests>
<excludedGroups>
<excludedGroup>com.foo.PitSkip</excludedGroup>
</excludedGroups>
</configuration>
</plugin>
<plugin>
<groupId>com.fortify.ps.maven.plugin</groupId>
<artifactId>maven-sca-plugin</artifactId>
<version>3.50</version>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings
only. It has no influence on the Maven build itself. -->
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<versionRange>[1.7,)</versionRange>
<goals>
<goal>add-test-source</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<versionRange>[0.5,)
</versionRange>
<goals>
<goal>prepare-agent</goal>
</goals>
</pluginExecutionFilter>
<action>
<!-- see http://wiki.eclipse.org/M2E_plugin_execution_not_covered -->
<ignore></ignore>
</action>
</pluginExecution>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<versionRange>[1.3,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute>
<runOnIncremental>true</runOnIncremental>
</execute>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
Zeigen Sie Ihre Pom-Datei. – khmarbaise
@khmarbaise es ist da, minus Abhängigkeiten und Berichtsabschnitte, die ich für irrelevant hielt, für Prägnanz. – Adam
Warum führst du das maven-jar-plugin in einem Kriegsprojekt aus? Und warum verwenden Sie maven-deploy-plugin separat, um eine zip-Datei zu implementieren, weil dies automatisch geschieht, weil Sie das maven-assembly-plugin verwenden? – khmarbaise