MVN学习笔记1中哪些关键概念需要重点掌握?

2026-06-09 14:303阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1079个文字,预计阅读时间需要5分钟。

MVN学习笔记1中哪些关键概念需要重点掌握?

学习Maven笔记:运行`mvn -v`查看版本;设置代理:编辑`settings.xml`文件,配置`proxies`下的`proxy`,设置`id`、`active`、`protocol`、`host`、`port`、`username`、`password`和`nonProxyHosts`。

MVN学习笔记1中哪些关键概念需要重点掌握?

mvn学习笔记1



1 mvn -v查看版本


2 设置代理

编辑settings.xml文件

<proxies>

<proxy>

<id>abc</id>

<active>true</active>

<protocol>maven.apache.org/POM/4.0.0"


xmlns:xsi="www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="maven.apache.org/POM/4.0.0


​​​maven.apache.org/maven-v4_0_0.xsd">
​​​ <modelVersion>4.0.0</modelVersion>

<groupId>com.juvenxu.mvnbook.account</groupId>

<artifactId>account-parent</artifactId>

<version>1.0.0-SNAPSHOT</version>

<packaging>pom</packaging>

<name>Account Parent</name>

<properties>

<springframework.version>2.5.6</springframework.version>

<junit.version>4.7</junit.version>

</properties>

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-beans</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context-support</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>${junit.version}</version>

<scope>test</scope>

</dependency>

</dependencies>

</dependencyManagement>

<build>

<pluginManagement>

<plugins>

<plugin>



<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-


plugin</artifactId>

<configuration>

<source>1.5</source>

<target>1.5</target>

</configuration>

</plugin>

<plugin>



<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-resources-


plugin</artifactId>

<configuration>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

</plugins>

</pluginManagement>

</build>

</project>

这里有定义了父的依赖和插件。而子的继承则变为:

<parent>

<groupId>com.juvenxu.mvnbook.account</groupId>

<artifactId>account-parent</artifactId>

<version>1.0.0-SNAPSHOT</version>

<relativePath>../account-parent/pom.xml</relativePath>

</parent>

。。。。这里定义具体的依赖,其依赖不需要版本号了,比如这样:

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

</dependency>

</dependencies>




13 剪裁反应堆

比如多个模块的话,有可能只是选取其中的某些部分:

比如mvn-aggragtor下有mvn-email,mvn-parent,mvn-persist,mvn-email依赖mvn-


parent,则

mvn clean install -pl account-email -am

-pl:构建指定的模块,模块间用逗号分割 -am:同时构健模块的所依赖的模块



14 默认情况下,maven-surefile-plugin的test目标会自动执行测试

src/test/java下的一组命名模式的测试类,该组模式为

**/Test*.java:

**/*Test.java:

**/*TestCase.java:

跳过测试:mvn package-DskipTests

跳过测试代码的编译: mvn package-Dmaven.test.skip=true

15 只运行指定的测试:

mvn test-Dtest=类名

匹配

mvn test-Dtest=Random*Test

在pom中,可以自动运行以Tests结尾的测试类

<plugin>

<configuration>

<includes>

<include>**/*Tests.java</include>

</includes>

同样可以用<excludes><exclude>去排除运行测试的类


16 测试覆盖率报告

mvn跟开源测试覆盖率统计工具 合成,比如

mvn cobertura:cobertura

之后在target/site/cobertura下看到index.html文件

本文共计1079个文字,预计阅读时间需要5分钟。

MVN学习笔记1中哪些关键概念需要重点掌握?

学习Maven笔记:运行`mvn -v`查看版本;设置代理:编辑`settings.xml`文件,配置`proxies`下的`proxy`,设置`id`、`active`、`protocol`、`host`、`port`、`username`、`password`和`nonProxyHosts`。

MVN学习笔记1中哪些关键概念需要重点掌握?

mvn学习笔记1



1 mvn -v查看版本


2 设置代理

编辑settings.xml文件

<proxies>

<proxy>

<id>abc</id>

<active>true</active>

<protocol>maven.apache.org/POM/4.0.0"


xmlns:xsi="www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="maven.apache.org/POM/4.0.0


​​​maven.apache.org/maven-v4_0_0.xsd">
​​​ <modelVersion>4.0.0</modelVersion>

<groupId>com.juvenxu.mvnbook.account</groupId>

<artifactId>account-parent</artifactId>

<version>1.0.0-SNAPSHOT</version>

<packaging>pom</packaging>

<name>Account Parent</name>

<properties>

<springframework.version>2.5.6</springframework.version>

<junit.version>4.7</junit.version>

</properties>

<dependencyManagement>

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-beans</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-context-support</artifactId>

<version>${springframework.version}</version>

</dependency>

<dependency>

<groupId>junit</groupId>

<artifactId>junit</artifactId>

<version>${junit.version}</version>

<scope>test</scope>

</dependency>

</dependencies>

</dependencyManagement>

<build>

<pluginManagement>

<plugins>

<plugin>



<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-compiler-


plugin</artifactId>

<configuration>

<source>1.5</source>

<target>1.5</target>

</configuration>

</plugin>

<plugin>



<groupId>org.apache.maven.plugins</groupId>

<artifactId>maven-resources-


plugin</artifactId>

<configuration>

<encoding>UTF-8</encoding>

</configuration>

</plugin>

</plugins>

</pluginManagement>

</build>

</project>

这里有定义了父的依赖和插件。而子的继承则变为:

<parent>

<groupId>com.juvenxu.mvnbook.account</groupId>

<artifactId>account-parent</artifactId>

<version>1.0.0-SNAPSHOT</version>

<relativePath>../account-parent/pom.xml</relativePath>

</parent>

。。。。这里定义具体的依赖,其依赖不需要版本号了,比如这样:

<dependencies>

<dependency>

<groupId>org.springframework</groupId>

<artifactId>spring-core</artifactId>

</dependency>

</dependencies>




13 剪裁反应堆

比如多个模块的话,有可能只是选取其中的某些部分:

比如mvn-aggragtor下有mvn-email,mvn-parent,mvn-persist,mvn-email依赖mvn-


parent,则

mvn clean install -pl account-email -am

-pl:构建指定的模块,模块间用逗号分割 -am:同时构健模块的所依赖的模块



14 默认情况下,maven-surefile-plugin的test目标会自动执行测试

src/test/java下的一组命名模式的测试类,该组模式为

**/Test*.java:

**/*Test.java:

**/*TestCase.java:

跳过测试:mvn package-DskipTests

跳过测试代码的编译: mvn package-Dmaven.test.skip=true

15 只运行指定的测试:

mvn test-Dtest=类名

匹配

mvn test-Dtest=Random*Test

在pom中,可以自动运行以Tests结尾的测试类

<plugin>

<configuration>

<includes>

<include>**/*Tests.java</include>

</includes>

同样可以用<excludes><exclude>去排除运行测试的类


16 测试覆盖率报告

mvn跟开源测试覆盖率统计工具 合成,比如

mvn cobertura:cobertura

之后在target/site/cobertura下看到index.html文件