Ich benutze Eclipse Kepler mit M2E. Ich habe ein leeres Eclipse-Projekt erstellt, das direkt in ein Maven-Projekt konvertiert wurde. Die pom.xml wird bereinigt: keine Abhängigkeit oder Build-Abschnitt, kein Eltern-POM. Die Maven settings.xml ist die Standardeinstellung: keine Informationen enthalten.Was bestimmt die Maven Plugins Versionen im <build> Abschnitt von pom.xml?
Wenn die Anhörung der Effective POM dank M2E, sind viele Plugins vorhanden:
<?xml version="1.0"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>testTCO</groupId>
<artifactId>testTCO</artifactId>
<version>0.0.1-SNAPSHOT</version>
<repositories>
<repository>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>Central Repository</name>
<url>http://repo.maven.apache.org/maven2</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<releases>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>central</id>
<name>Central Repository</name>
<url>http://repo.maven.apache.org/maven2</url>
</pluginRepository>
</pluginRepositories>
<build>
<sourceDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\src\main\java</sourceDirectory>
<scriptSourceDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\src\main\scripts</scriptSourceDirectory>
<testSourceDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\src\test\java</testSourceDirectory>
<outputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\classes</outputDirectory>
<testOutputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\test-classes</testOutputDirectory>
<resources>
<resource>
<directory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\src\main\resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\src\test\resources</directory>
</testResource>
</testResources>
<directory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target</directory>
<finalName>testTCO-0.0.1-SNAPSHOT</finalName>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.3</version>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.2-beta-5</version>
</plugin>
<plugin>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.0</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>2.4.1</version>
<executions>
<execution>
<id>default-clean</id>
<phase>clean</phase>
<goals>
<goal>clean</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>default-testResources</id>
<phase>process-test-resources</phase>
<goals>
<goal>testResources</goal>
</goals>
</execution>
<execution>
<id>default-resources</id>
<phase>process-resources</phase>
<goals>
<goal>resources</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<executions>
<execution>
<id>default-jar</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.3.2</version>
<executions>
<execution>
<id>default-compile</id>
<phase>compile</phase>
<goals>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>default-testCompile</id>
<phase>test-compile</phase>
<goals>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.10</version>
<executions>
<execution>
<id>default-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<id>default-install</id>
<phase>install</phase>
<goals>
<goal>install</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>default-deploy</id>
<phase>deploy</phase>
<goals>
<goal>deploy</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>3.0</version>
<executions>
<execution>
<id>default-site</id>
<phase>site</phase>
<goals>
<goal>site</goal>
</goals>
<configuration>
<outputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\site</outputDirectory>
<reportPlugins>
<reportPlugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
</reportPlugin>
</reportPlugins>
</configuration>
</execution>
<execution>
<id>default-deploy</id>
<phase>site-deploy</phase>
<goals>
<goal>deploy</goal>
</goals>
<configuration>
<outputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\site</outputDirectory>
<reportPlugins>
<reportPlugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
</reportPlugin>
</reportPlugins>
</configuration>
</execution>
</executions>
<configuration>
<outputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\site</outputDirectory>
<reportPlugins>
<reportPlugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
</reportPlugin>
</reportPlugins>
</configuration>
</plugin>
</plugins>
</build>
<reporting>
<outputDirectory>C:\stuff\eclipse-jee-kepler_64\workspace\wosp\testTCO\target\site</outputDirectory>
</reporting>
</project>
Zum Beispiel die Version 2.5 des Plug-ins Maven-Ressourcen-Plugin geladen wird. Warum diese Version und nicht eine neuere?
Ich weiß, dass ich dies überschreiben kann, indem Sie das Plugin und die erforderliche Version in der pom.xml angeben, aber ich würde gerne wissen, wie diese Standardversion Werte geladen werden.
Das Super POM enthält einen Teil des Inhalts des effektiven POM, aber die meisten Plugins scheinen aus dem Nichts zu kommen.