如何生成effective-pom
effective-pom是什么?我们知道任何一个项目的pom都至少继承了maven内置的超级pom,有些项目中的用户还会配置自己的继承层次,也就是说,但从当前的pom是无法全面了解项目信息的,你必须同时查看所有父pom. maven有一个effective pom的概念,它表示一个合并整个继承机构所有信息的POM,假如项目A继承自项目B,而项目B又继承自超级POM,那么A的Effectiv POM 就包含了所有A,B一级超级POM的配置,有了Effectve POM,用户就能一次得到完成的POM信息.
Maven用户使用命令行获取effective-pom,在termal中进入当前pom所在的文件夹(cd 命令)
$ mvn help:effective-pom
Effective POMs, after inheritance, interpolation, and profiles are applied: <?xml version="1.0" encoding="GBK"?> <!-- ====================================================================== --> <!-- --> <!-- Generated by Maven Help Plugin on 2020-12-16T11:21:49+08:00 --> <!-- See: http://maven.apache.org/plugins/maven-help-plugin/ --> <!-- --> <!-- ====================================================================== --> <!-- ====================================================================== --> <!-- --> <!-- Effective POM for project --> <!-- 'com.juvenxu.mvnbook.account:account-captcha:jar:1.0.0-SNAPSHOT' --> <!-- --> <!-- ====================================================================== --> <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 https://maven.apache.org/ xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>com.juvenxu.mvnbook.account</groupId> <artifactId>account-parent</artifactId> <version>1.0.0-SNAPSHOT</version> </parent> <groupId>com.juvenxu.mvnbook.account</groupId> <artifactId>account-captcha</artifactId> <version>1.0.0-SNAPSHOT</version> <name>Account Captcha</name> <properties> <junit.version>4.7</junit.version> <kaptcha.version>2.3</kaptcha.version> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <springframework.version>2.5.6</springframework.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>2.5.6</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>com.google.code.kaptcha</groupId> <artifactId>kaptcha</artifactId> <version>2.3</version> <classifier>jdk15</classifier> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>2.5.6</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>2.5.6</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>2.5.6</version> <scope>compile</scope> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.7</version> <scope>test</scope> </dependency> </dependencies> <repositories> <repository> <releases> <enabled>true</enabled> </releases> <snapshots> <enabled>false</enabled> </snapshots> <id>sonatype-forge</id> <name>Sonatype Forge</name> <url>http://repository.sonatype.org/content/groups/forge/</url> </repository> <repository> <snapshots> <enabled>false</enabled> </snapshots> <id>central</id> <name>Central Repository</name> <url>https://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>https://repo.maven.apache.org/maven2</url> </pluginRepository> </pluginRepositories> <build> <sourceDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\src\main\java</sourceDirectory> <scriptSourceDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\src\main\scripts</scriptSourceDirectory> <testSourceDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\src\test\java</testSourceDirectory> <outputDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\target\classes</outputDirectory> <testOutputDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\target\test-classes</testOutputDirectory> <resources> <resource> <directory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\src\main\resources</directory> </resource> </resources> <testResources> <testResource> <directory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\src\test\resources</directory> </testResource> </testResources> <directory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\target</directory> <finalName>account-captcha-1.0.0-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.8</version> </plugin> <plugin> <artifactId>maven-release-plugin</artifactId> <version>2.5.3</version> </plugin> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> <plugin> <artifactId>maven-resources-plugin</artifactId> <version>2.6</version> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <artifactId>maven-clean-plugin</artifactId> <version>2.5</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.6</version> <executions> <execution> <id>default-testResources</id> <phase>process-test-resources</phase> <goals> <goal>testResources</goal> </goals> <configuration> <encoding>UTF-8</encoding> </configuration> </execution> <execution> <id>default-resources</id> <phase>process-resources</phase> <goals> <goal>resources</goal> </goals> <configuration> <encoding>UTF-8</encoding> </configuration> </execution> </executions> <configuration> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <artifactId>maven-jar-plugin</artifactId> <version>2.4</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>3.1</version> <executions> <execution> <id>default-compile</id> <phase>compile</phase> <goals> <goal>compile</goal> </goals> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </execution> <execution> <id>default-testCompile</id> <phase>test-compile</phase> <goals> <goal>testCompile</goal> </goals> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </execution> </executions> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> <plugin> <artifactId>maven-surefire-plugin</artifactId> <version>2.12.4</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.4</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.3</version> <executions> <execution> <id>default-site</id> <phase>site</phase> <goals> <goal>site</goal> </goals> <configuration> <outputDirectory>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\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>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\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>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\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>F:\6monthlearn\material_学习资料\books_书\书籍附件\mvn_in_action_code-master\ch-12\account-parent\account-captcha\target\site</outputDirectory> </reporting> </project> [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 1.310 s [INFO] Finished at: 2020-12-16T11:21:50+08:00 [INFO] ------------------------------------------------------------------------