Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

文章目录:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):1、JIRA账号注册

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):2、PGP下载安装与密钥生成发布

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):3、Maven独立插件安装与settings.xml配置

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):5、Maven版本发布与后续版本更新

前言:

Taurus.MVC-Java 开源地址:https://github.com/cyq1162/Taurus.MVC-java

本篇讲述如何将一个框架打包上传到中央仓库。

经过九九八十一难,终于成功打包上传,特此记录与分享。

如果无法顺利,遇到问题,建议多参考官网指南

1、转换项目到Maven项目:

如果项目是maven项目,可以忽略此步。

如果是普通项目,可以直接转换成maven项目:

项目右键:Configure-》Convert to Maven Project:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

 

填写要发布的框架的相关信息:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

 

点击Finish即完成项目转换。

如果涉及到直接引用外部jar包,可以有两种方式解决处理,都是在pom.xml 新增配置:

方式一:给jar包添加一个引用配置:

<dependency>     <groupId>自己取名</groupId>     <artifactId>自己取名</artifactId>     <version>1</version>     <scope>system</scope>     <systemPath>${pom.basedir}/src/main/resources/lib/需要加载的.jar</systemPath> </dependency>

方式二:在pom.xml的默认编绎插件中:指定maven编绎的扩展路径:

           <compilerArguments>                                     <extdirs>lib</extdirs>                       </compilerArguments>          </configuration>

如图:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

 

2、配置pom.xml:补充基本信息

对于要提交到中央仓库的项目,需要补充一些额外的信息:

1、项目地址:url  2、开源协议:<licenses>  3、Git地址:<scm>  4、作者信息:<developers>

自行对照项目,调整修改,示例完整配置如下:

 <modelVersion>4.0.0</modelVersion>   <groupId>com.cyqdata</groupId>   <artifactId>taurus-mvc</artifactId>   <version>3.0.1-SNAPSHOT</version>   <name>TaurusMVC</name>   <description>Taurus.mvc-java is a high-performance mvc and webapi framework for java web</description>   <url>https://github.com/cyq1162/Taurus.MVC-java</url>      <licenses>         <!-- 开源协议 -->         <license>             <name>Apache License 2.0</name>             <url>https://opensource.org/licenses/Apache-2.0</url>         </license>     </licenses>      <scm>         <!-- scm 信息 -->         <url>https://github.com/cyq1162/Taurus.MVC-java</url>         <connection>https://github.com/cyq1162/Taurus.MVC-java.git</connection>     </scm>      <developers>         <!-- 开发者信息 -->         <developer>             <id>cyq1162</id>             <name>chenyuqiang</name>             <url>https://www.cnblogs.com/cyq1162</url>             <email>272657997@qq.com</email>             <roles>                 <role>Developer</role>             </roles>             <organization>com.cyqdata</organization>             <timezone>+8</timezone>         </developer>     </developers>

开源协议的名称和地址,可以在这里选:https://opensource.org/licenses/

3、配置pom.xml:指定首次发布,快照的发布地址

 添加发布到快照的版本地址:

  <distributionManagement>   <snapshotRepository>     <id>ossrh</id>     <url>https://s01.oss.sonatype.org/content/repositories/snapshots</url>   </snapshotRepository> </distributionManagement>

节点添加位置:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

4、配置pom.xml:添加Maven发布所需插件

插件的添加节点,所需一共4个,第一个是默认就有的:

Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置

 

1、插件1:nexus-staging-maven-plugin:指定正式版本发布的地址

<plugin>       <groupId>org.sonatype.plugins</groupId>       <artifactId>nexus-staging-maven-plugin</artifactId>       <version>1.6.7</version>       <extensions>true</extensions>       <configuration>         <serverId>ossrh</serverId>         <nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>         <autoReleaseAfterClose>true</autoReleaseAfterClose>       </configuration>     </plugin>

2、插件2:maven-gpg-plugin:指定使用gpg进行签名

     <plugin>       <groupId>org.apache.maven.plugins</groupId>       <artifactId>maven-gpg-plugin</artifactId>       <version>1.5</version>       <executions>         <execution>           <id>sign-artifacts</id>           <phase>verify</phase>           <goals>             <goal>sign</goal>           </goals>         </execution>       </executions>     </plugin>

3、插件3:maven-source-plugin :打包源码(发布正式版本需要、快照版本可不需要)

<plugin>       <groupId>org.apache.maven.plugins</groupId>       <artifactId>maven-source-plugin</artifactId>       <version>2.2.1</version>       <executions>         <execution>           <id>attach-sources</id>           <goals>             <goal>jar-no-fork</goal>           </goals>         </execution>       </executions>     </plugin>     <plugin>

4、插件4:maven-javadoc-plugin:打包JavaDoc(发布正式版本需要、快照版本可不需要)

    <plugin>  <groupId>org.apache.maven.plugins</groupId>       <artifactId>maven-javadoc-plugin</artifactId>       <version>2.9.1</version>       <executions>         <execution>           <id>attach-javadocs</id>           <goals>             <goal>jar</goal>           </goals>         </execution>       </executions>     </plugin>

5、插件5:maven-jar-plugin:使用自定义mainfest.mf(可选,默认Maven自动生成)

     <plugin>           <groupId>org.apache.maven.plugins</groupId>           <artifactId>maven-jar-plugin</artifactId>           <configuration>             <archive>               <manifestFile>src/META-INF/MANIFEST.MF</manifestFile>             </archive>           </configuration>         </plugin> 

总结:

文章至此,即完成了上传到的Jar包发布到中央仓库的所有配置。

一切就绪,下一篇,介绍执行发布上传。

发表评论

评论已关闭。

相关文章