全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

mvn install详解

发布时间:2023-11-22 20:01:59
发布人:xqq

一、mvn install命令

在Maven项目中执行默认的命令mvn install会将本地的jar包安装到本地的仓库中,以便于在其他项目通过pom依赖的方式使用。同时,执行该命令还会对项目进行编译、打包和发布操作,便于在其他环境中进行部署使用。

二、mvn install命令选项

mvn install命令有一些选项可以控制执行过程中的一些特定操作。

1. -Dmaven.test.skip=true 该选项可以跳过测试过程,加快构建过程,但有可能会导致潜在的线上问题。

2. -DskipTests=true 该选项也可以跳过测试过程,但不会生成测试报告。

3. -Dmaven.site.skip=true 该选项可以跳过生成站点文档过程。

4. -Dmaven.javadoc.skip=true 该选项可以跳过生成javadoc文档过程。

三、mvn install本地jar选取

有些情况下,我们需要将一个本地已有的jar包安装到本地maven仓库中,这时,我们可以执行mvn install:install-file命令来完成这个过程。

命令参数:

file:jar包文件的位置 groupId:groupId,例如com.example artifactId:artifactId,例如example-java version:版本号,例如1.0.0 packaging:打包方式,默认为jar generatePom:是否生成pom文件,默认为true

示例代码:


mvn install:install-file -DgroupId=com.example -DartifactId=example-java -Dversion=1.0.0 -Dfile=/path/to/example.jar -Dpackaging=jar -DgeneratePom=true

四、使用mvn install构建可执行jar包

使用Maven的插件maven-assembly-plugin,我们可以方便的构建出可执行的jar包,并将所有的依赖包打成一个大的jar包,以方便在其他环境中运行。

配置文件示例:



    
        
            maven-assembly-plugin
            
                
                    
                        com.example.Main
                    
                
                
                    jar-with-dependencies
                
            
            
                
                    make-assembly
                    package
                    
                        single
                    
                
            
        
    

执行命令:


mvn clean package

之后在target文件夹下就可以找到一个可执行的jar文件,运行方式为:java -jar example.jar。

五、使用mvn install将项目安装到本地仓库的多个版本

在开发过程中,有时候我们需要同时维护多个版本的同一个项目,我们可以使用mvn install命令将每个版本安装到不同的目录下。

首先,在pom.xml中指定版本号:


com.example
example-java
1.0.0
jar

然后,执行以下命令来将项目安装到本地仓库:


mvn install -Dmaven.install.version=1.0.0
mvn install -Dmaven.install.version=1.0.1

这样,每个版本都会被安装到~/.m2/repository/com/example/example-java目录下,分别对应1.0.0和1.0.1两个版本。

mvninstall

相关文章

SQL中时间戳转换日期格式

SQL中时间戳转换日期格式

2023-11-22
unsignedc语言详解

unsignedc语言详解

2023-11-22
linuxoracle补丁安装,linux系统补丁安装

linuxoracle补丁安装,linux系统补丁安装

2023-11-22
MySQL AES加密详解

MySQL AES加密详解

2023-11-22

最新文章

武汉新媒体行业公司排名

武汉新媒体行业公司排名

2023-11-01
武汉新媒体就业现状好吗

武汉新媒体就业现状好吗

2023-11-01
武汉全媒体行业发展现状及趋势

武汉全媒体行业发展现状及趋势

2023-10-31
武汉全媒体现状

武汉全媒体现状

2023-10-31
在线咨询 免费试学 教程领取