gradle 越来越流行,maven 危矣。
记录一下maven的常用配置,留待后用。
前置条件: 本地有java 环境。本人jdk21 已经安装好
安装私服 nexus【非必要】
docker 方式安装测试非常方便
hub.docker.com 搜索nexus3。当前最新版本是 docker pull sonatype/nexus3:3.65.0
mkdir -p /opt/nexus/nexus-data && chmod -R 777 /opt/nexus/nexus-data
docker run -itd -p 18081:8081 \
--name nexus \
-v /opt/nexus/nexus-data:/nexus-data \
-e INSTALL4J_ADD_VM_PARAMS="-Xmx2048m -XX:MaxDirectMemorySize=1024m" \
--restart=always \
--privileged=true \
sonatype/nexus3:3.65.0
# 浏览器打开 http://ip:18081
# 默认密码 从官方文档查询最新的位置。当前版本在容器目录
docker exec -it nexus sh
cat /opt/sonatype/sonatype-work/nexus3/admin.password
下载最新版本maven
打开 https://downloads.apache.org/maven/maven-3/ 下载最新的版本
当前最新版本是3.9.6 点击 3.9.6 下载即可
bin.tar.gz.asc 文件主要用来验证文件的完整性。
环境变量
# maven maven环境变量我们习惯配置成MAVEN_HOME,但是gradle寻找的是M2_HOME,so 两个都要。
export M2_HOME=~/development/maven
export MAVEN_HOME=~/development/maven
export PATH=$PATH:$M2_HOME/bin
# 验证是否安装完成
mvn -v
本地 settings.xml(idea 默认使用 ~/.m2/settings.xml)
如果没有私服nexus 可以使用 阿里云 地址.
https://maven.aliyun.com/repository/public
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 https://maven.apache.org/xsd/settings-1.2.0.xsd">
<localRepository>/Users/mylomen/.m2/repository</localRepository>
<servers>
<server>
<id>nexus</id>
<username>your_username</username>
<password>your_pwd</password>
</server>
<server>
<id>your-releases-id</id>
<username>your_username</username>
<password>your_pwd</password>
</server>
<server>
<id>your-snapshots-id</id>
<username>your_username</username>
<password>your_pwd</password>
</server>
</servers>
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>https://nexus.your_domain.com/repository/maven-public/</url>
</mirror>
</mirrors>
<profiles>
<profile>
<id>dev</id>
<repositories>
<repository>
<id>nexus</id>
<url>https://nexus.your_domain.com/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
</repositories>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<pluginRepositories>
<pluginRepository>
<id>public</id>
<name>Public Repositories</name>
<url>https://nexus.your_domain.com/repository/maven-public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>dev</activeProfile>
</activeProfiles>
</settings>
常用命令
# 打印所有可用的环境变量和Java系统属性
mvn help:system
# 查看当前环境 maven 使用的 settings.xml 优先级
mvn -X
# 检查当前Maven环境启用的文件
mvn help:effective-settings
# 使用指定的 maven 配置文件执行
mvn -s ~/.m2/settingsV2.xml clean package
# 删除本地编译的文件以及jar
mvn clean
# 编译当前目录下的 pom.xml 文件
mvn compile
# 安装jar 到本地 maven 环境
mvn install
# 安装jar 到远程 nexus 环境(根据配置)
mvn deploy
# 跳过test测试用例打包
mvn clean package -Dmaven.test.skip=true
文章评论