参考:https://blog.csdn.net/hawinlolo/article/details/115860387
clean
clean 是 maven 工程的清理命令,执行 clean 会删除 target 目录及内容。
test
test 是 maven 工程的测试命令 mvn test,会执行src/test/java下的单元测试类。
compile
compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target目录下。
package
package 是 maven 工程的打包命令,对于 java 工程执行 package 打成 jar 包,对于web 工程打成war包。
install
install 是 maven 工程的安装命令,执行 install 将 maven 打成 jar 包或 war 包发布到本地仓库。
deploy
deploy是 maven 工程的部署命令,部署包到远程服务器
常用命令
---------------实际应用-----------------------
# 1、刷新子模块版本号:
mvn versions:update-child-modules
# 2、重新打包到maven本地库:
mvn clean install -Dmaven.test.skip=true
mvn install
# 3、部署包到远程服务器
mvn clean deploy -Dmaven.test.skip=true
#---------------------一般常用命令-----------------------
# 该命令打印出所有的java系统属性和环境变量
mvn help:system 自动在本用户下创建 ~/.m2/repository
# 清理输出目录默认target/
mvn clean
mvn clean compile 清理编译
# maven test,但实际执行的命令有:clean:clean,resource:resources,compiler:compile, resources:testResources, compiler:testCompile,maven在执行test之前,会先自动执行项目主资源处理,主代码编译,测试资源处理,测试代码编译等工作,测试代码编译通过之后默认在target/test-calsses目录下生成二进制文件,紧接着surefile:test 任务运行测试,并输出测试报告,显示一共运行了多少次测试,失败成功等等
mvn clean test 清理测试
mvn clean package 清理打包
mvn clean install 清理将打包好的jar存入 本地仓库 注意是本地仓库
mvn clean deploy 根据pom中的配置信息将项目发布到远程仓库中
echo %MAVEN_HOME%:查看maven安装路径
---------------------创建项目-------------------------------
mvn -version/-v 显示版本信息
mvn archetype:generate 创建mvn项目,使用Archetype生成项目骨架
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建mvn项目
# 创建Maven的普通java项目:
mvn archetype:create -DgroupId=packageName -DartifactId=projectName
# 创建Maven的Web项目:
mvn archetype:create -DgroupId=packageName -DartifactId=webappName-DarchetypeArtifactId=maven-archetype-webapp
---------------------优化依赖命令-------------------------------
mvn dependency:list 显示所有已经解析的所有依赖
mvn dependency:tree 以目录树的形式展现依赖, 最高层为一层依赖 其次二层依赖 三层依赖....
mvn dependency:analyze 第一部分显示 已经使用但是未显示依赖的的 第二部分显示项目未使用的但是依赖的
---------------------第三方jar 发布到远程仓库---------------------
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/
---------------------第三方jar 安装到本地仓库---------------------
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DdownloadSources=true -DdownloadJavadocs=true
#你是否因为记不清某个插件有哪些goal而痛苦过,你是否因为想不起某个goal有哪些参数而苦恼,那就试试这个命令吧,它会告诉你一切的.参数: 1. -Dplugin=pluginName 2. -Dgoal(或-Dmojo)=goalName:与-Dplugin一起使用,它会列出某个插件的goal信息,如果嫌不够详细,同样可以加-Ddetail.(注:一个插件goal也被认为是一个 “Mojo”)
mvn help:describe -Dplugin=help -Dmojo=describe
mvn -e 显示详细错误 信息.
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的环境中处理和发布包。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources 产生应用需要的任何额外的源代码,如xdoclet。
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> <!-- 固定值在MAVEN3中-->
<groupId>cuiyaonan2000</groupId> <!-- 所属于的组 -->
<artifactId>maven</artifactId> <!-- 唯一标示 -->
<version>0.0.1-SNAPSHOT</version> <!-- 版本号 -->
<packaging>war</packaging> <!-- 项目的打包方式,默认使用jar -->
<name>maven项目模板的基本使用</name>
<description> 这里的描述不知道是干吗用</description>
<properties>
<springframework.version>2.5.6</springframework.verson>
<!-- 归类依赖 只需在 <version>${springframework.version}</version> 使用就可以了-->
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.7</version>
<!-- <type>依赖的类型,大部分情况下不必声明 默认是jar</type> -->
<scope>test</scope> <!-- 依赖范围 传递性依赖 详见p63 -->
<!-- <optional>标记依赖是否可选 不明白 该处的值是 true 和 false </optional> -->
<!--
<exclusions>
<exclusion>
排除传递性依赖 只需列出如下的2项就可以了
<groupId></groupId>
<artifactId></artifactId>
</exclusion>
</exclusions>
-->
</dependency>
</dependencies>
<build>
<plugins>
<!-- 设置这个插件的对应Java版本,貌似是为了解决一个历史问题-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
</configuration>
</plugin>
<!-- 如下使用UTF-8 处理资源文件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
<!-- 配置远程版本仓库 -->
<repositories>
<!-- 设置远程版本库 直接收发布版本 不接受快照版本-->
<repository>
<id>jboss</id> <!-- 如果是用central 就会覆盖中央仓库 -->
<name>JBoss Repository</name>
<url>http://repository.jboss.com/maven2/</url>
<release>
<enabled>true</enabled>
<!-- 如下的2个参数详见p83
<updatePolicy>daily</updatePolicy>
<checksumPolicy>ignore</checksumPolicy>
-->
</release>
<snapshots>
<enabled>false</enabled>
</snapshots>
<layout>default</layout>
</repository>
</repositories>
<!-- 将该项目 发布到远程仓库中 -->
<distributionManagement>
<repository>
<id>proj-release</id> <!-- 这里的id是为了 跟setting.xml中的 username 和 userpassword 的id匹配,有的仓库需要权限账户-->
<name>Proj Release Repository</name>
<url>http://192.168.89.130</url>
</repository>
<snapshotRepository>
<id>proj-release</id>
<name>Proj Release Repository</name>
<url>http://192.168.89.130</url>
</snapshotRepository>
</distributionManagement>
</build>
</project>
标签:install,jar,maven,命令,clean,test,mvn
From: https://www.cnblogs.com/hasome/p/17698661.html