安装
-
下载解压
-
配置环境变量
MAVEN_HOME = apache-maven path = %MAVEN_HOME%\bin -
配置settings文件
<!--配置本地仓库地址--> <localRepository></localRepository> <!--配置远程仓库地址--> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/repositories/central/</url> </mirror> <!--配置JDK--> <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.8</jdk> </activation> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion> </properties> </profile>
maven命令
# 编译test代码到test-classes目录
mvn test-compile
# 编译test代码,并执行test-classes代码
mvn test
# 清除target目录
mvn clean
# 编译main代码到classes目录
mvn compile
# main代码成jar包
mvn package
# 将jar包发布到本地仓库
mvn install
# 将jar包发布到远程仓库
mvn deploy
pom.xml
<!--pom模型版本号-->
<modelVersion>4.0.0</modelVersion>
<!--定义项目标识符-->
<groupId>groupId</groupId>
<artifactId>artifactId</artifactId>
<version>1.0-SNAPSHOT</version>
<!--properties定义变量,也可以在命令中指定 -D proj.version=1.0-RELEASE -->
<properties>
<proj.version>1.0-SNAPSHOT</proj.version>
</properties>
<version>${proj.version}</version>
<!--
定义项目打包类型
pom定义父项目,聚合子项目
jar, war定义打包类型
-->
<packaging>pom</packaging>
<!--声明父项目-->
<parent>
<artifactId>artifactId</artifactId>
<groupId>groupId</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<!--
compile,仅编译时
test,仅测试时
provided,仅编译和测试时
runtime,仅运行时
-->
<scope>runtime</scope>
<!--引入依赖-->
<dependencies>
<dependency>
<groupId>groupId</groupId>
<artifactId>artifactId</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<!--排除依赖-->
<exclusions>
<exclusion>
<groupId>groupId</groupId>
<artifactId>artifactId</artifactId>
<version>1.0-SNAPSHOT</version>
</exclusion>
</exclusions>
<!--聚合子项目-->
<modules>
<module>business-control</module>
<module>business-portal</module>
</modules>
<!--
父项目管理包版本号
子项目需显式引用
-->
<dependencyManagement>
<dependencies>
<dependency>
<groupId>groupId</groupId>
<artifactId>artifactId</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
</dependencyManagement>
<!--配置环境,也可以通过命令指定 -P prod -->
<profiles>
<profile>
<id>test</id>
<dependencies></dependencies>
<properties></properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<dependencies></dependencies>
<properties></properties>
</profile>
</profiles>