发布自己的jar到Maven Repository公服上
Maven
前段时间自己写了一个简易的Java版爬虫框架。假如想把这个框架完善还是需要大家的力量,假如每次用都要从Gihub上下载源码岂不是很麻烦?由于自己的项目使用的是maven来管理jar包,那么就试试把这个爬虫框架放到公服仓库上去吧!
注册Sonatype账号
用过Jira的使用户就很熟习了,事务与项目跟踪软件。注册好之后也能使用这个账号登陆maven公服仓库https://oss.sonatype.org/
注意:Username 肯定不要是中文,肯定要是英文!!!
创立一个Jira
Project: Open Source Project Repository Hosting (OSSRH)
Issue Type: New Project
下面是我项目的配置
WX20180708-221640@2x.png
注意Group Id 要和项目中pom配置的一样,肯定要是域名的反写,这里推荐用github的域名(假如自己没有长期维护的域名),自己的域名可可以会过期github可是不可以随随意便的过期吧~
Project URL 就是你项目再Github上的地址;
SCM url 就是项目clone地址
ok,创立好之后就等待老外回复吧。由于有时差,所以一般他们晚上十点钟以后才可以去审查,所以第一次配置的的时候肯定要精确,不然改一次要等一天哦~~~
正确的审核反馈如下:
WX20180708-222208@2x.png
修改项目Pom
这个也是比较重要的
肯定要有以下结构
<description>A Simple Java Crawler Framework</description><licenses> <license> <name>The Apache Software License, Version 2.0</name> <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url> </license></licenses><developers> <developer> <name>wangxc</name> <email>vector4wang@qq.com</email> </developer></developers><scm> <connection> scm:git: vector4wang/vw-crawler.git </connection> <developerConnection> scm:git: vector4wang/vw-crawler.git </developerConnection> <url> vector4wang/vw-crawler</url></scm>
这是Nexus Rules规定的,不然会出错!
而后就是构建插件与配置
<distributionManagement> <snapshotRepository> <id>ossrh</id> <url>https://oss.sonatype.org/content/repositories/snapshots/</url> </snapshotRepository> <repository> <id>ossrh</id> <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url> </repository></distributionManagement><build> <plugins> <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://oss.sonatype.org/</nexusUrl> <autoReleaseAfterClose>true</autoReleaseAfterClose> </configuration> </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> <!-- java doc --> <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> <!-- 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> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.5.1</version> <configuration> <source>${java.version}</source> <target>${java.version}</target> </configuration> </plugin> </plugins></build>
distributionManagement中对应MavenHome中的setting的文件配置,如下
<servers> <server> <id>ossrh</id> <username>UserName</username> <password>Password</password> </server></servers>
使用户名和密码就是你注册sonatype时的使用户名和密码,id要对应pom里的id
nexus-staging-maven-plugin 这个插件是在成功发布到公服上的时候不需要手动去改变status(close,有的文章详情说要手动关闭)
maven-javadoc-plugin 这个也比较重要,生成javadoc,要求代码里假如要用注释,就要按照规范去注释,这个大家能查找相关内容理解下,你也能在deploy的时候按照提醒去修改代码
maven-gpg-plugin 这个是使用来生成私钥,下面会使用到
ps:我的电脑是mac,在打包的时候报错,说找不到java home,在properti中加上下面配置就行了
<javadocExecutable>${java.home}/../bin/javadoc</javadocExecutable>
安装gpg
windows使用户在gpg4win这里下载,mac能下载GPG_suite
由于都是图形界面,所以直接创立新的秘钥
需要输入使用户名、邮箱和密码,肯定要记住这个密码
之后需要把此秘钥发布到公钥服务器上(由于是图形工具,很简单,假如是命令行,还请在网上找一下)
发布
一切配置好之后,能用mvn clean deploy
看一下结果,假如想发布release版本的需要把version中的snapshot去掉就可~
发布的时候提醒你输入密码,这个密码就是上一节中你输入的密码!
之后即可以在仓库中找到自己发布的jar包了,发布release之后,要回到jira上接着评论告知已经发布,能关闭掉这个jira了!!!
后记
最大的问题就是时差问题,由于你遇到的问题可可以需要老外那边协助,比方重置少量权限或者者其余稀奇古怪的问题,这样一等就是一天。所以要准备十点以后,一旦jira有回复,立马去修改去尝试,而后再告知老外,那是老外可可以会立即做出回应,就不需要等一天了~~~
另外后面会把爬虫框架vw-crawler的用说明补充出来,希望大家可以多多捧场~~~
CSDN:http://blog.csdn.net/qqhjqs?viewmode=list
博客:http://blog.wangxc.club/
简书:https://www.songma.com/u/223a1314e818
Github: vector4wang
Gitee:https://gitee.com/backwxc
假如感觉有帮助的话,点个赞哦~
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 发布自己的jar到Maven Repository公服上