Maven 库指定 POM

Posted by koocyton on 2024-09-13
Estimated Reading Time 1 Minutes
Words 318 In Total
Viewed Times

Maven 库指定 POM

简介

| 将 Maven 库里的文件,用指定的 POM 来处理
| 让使用依赖的项目,自行选择不同的 java 包
| 比如提供 JsonUtil 工具类,同时支持 jackson 和 Gson 或 fastjson
| 但并不用三个都拉进依赖包
| 可以提供一个空依赖的 POM 文件,用户自行依赖

settings.xml 配置 repositoryId

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<servers>

<server>
<id>sonatype-snapshots</id>
<username>username</username>
<password>password</password>
</server>

<server>
<id>sonatype-release</id>
<username>username</username>
<password>password</password>
</server>

...
</servers>

复制 POM (deploy-pom.xml) 文件出来,去除不必要的部分

在命令行执行 mvn 命令

1
2
3
4
5
6
7
8
9
10
11
mvn \
deploy:deploy-file -DskipTests \
-Darguments="-Dmaven.javadoc.failOnError=false" \
-DgroupId=project.groupId \
-DartifactId=project.artifactId \
-Dversion=1.0.0-SNAPSHOT \
-Dpackaging=jar \
-Dfile=/project-target/project-1.0.0-SNAPSHOT.jar \
-DrepositoryId=sonatype-snapshots \
-DpomFile=deploy-pom.xml \
-Durl=https://oss.sonatype.org/content/repositories/snapshots

发布到正式库

先签名发布,然后到 oss.sonatype 上选 close

1
2
3
4
5
6
7
mvn gpg:sign-and-deploy-file
-Durl="https://oss.sonatype.org/service/local/staging/deploy/maven2/"
-DrepositoryId="sonatype-release"
-Dfile="target/boot3-web-core-1.0.2.RELEASE.jar"
-Dsources="target/boot3-web-core-1.0.2.RELEASE-sources.jar"
-Djavadoc="target/boot3-web-core-1.0.2.RELEASE-javadoc.jar"
-DpomFile="target/pom-deploy.xml"

如果您喜欢此博客或发现它对您有用,则欢迎对此发表评论。 也欢迎您共享此博客,以便更多人可以参与。 如果博客中使用的图像侵犯了您的版权,请与作者联系以将其删除。 谢谢 !