内容简介:在公司或组织内部搭建Maven服务器可以实现组织内模块或库包代码共享,本文讨论使用Nexus Repository OSS开源服务器如何搭建公司内部的Maven生态。当然除了使用 Nexus Repository OSS比较正规管理以外,如果是简单可以共享的库包也可以使用http等方式共享,这种方式比较简单易行,先简单谈一下这种方式。由于Maven不支持商业产品Oracle数据库,需要建立本地库,建立本地库的办法是,
在公司或组织内部搭建Maven服务器可以实现组织内模块或库包代码共享,本文讨论使用Nexus Repository OSS开源服务器如何搭建公司内部的Maven生态。
当然除了使用 Nexus Repository OSS比较正规管理以外,如果是简单可以共享的库包也可以使用http等方式共享,这种方式比较简单易行,先简单谈一下这种方式。
本地库
由于Maven不支持商业产品Oracle数据库,需要建立本地库,建立本地库的办法是, 下载oracle jdbc驱动 ,然后键入:
mvn install:install-file -Dfile=ojdbc8.jar -DgroupId=com.oracle -DartifactId=ojdbc8 -Dversion=12.2.0.1 -Dpackaging=jar
这就在Maven本地建立了jdbc的jar包库包,然后你就可以在自己电脑上使用pom.xml配置访问:
<dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc8</artifactId> <version>12.2.0.1</version> </dependency>
Http服务器库
在你本机maven仓库目录找到mavenrep\com\oracle\ojdbc8,现在可以将从com开始的目录com\oracle\ojdbc8整个复制到http服务器上,比如我可以上传到github服务器:
https://github.com/banq/jdon-mvn-repo/raw/master/releases
这样我们在pom.xml中就使用如下配置可以获取到这个http服务器上的库包:
<repositories> <repository> <id>jdon-jdbc</id> <url>https://github.com/banq/jdon-mvn-repo/raw/master/releases</url> </repository> </repositories> <dependency> <groupId>com.jdon</groupId> <artifactId>jdon-jdbc</artifactId> <version>6.6.4</version> </dependency>
Nexus Repository OSS
下载OSS: https://www.sonatype.com/download-oss-sonatype ,现在是3.0以上版本,下载安装或解压,到bin目录下:
- 在像 Linux 这样的类Unix平台上使用命令: ./nexus run
- 在Windows中,使用命令: nexus.exe /run
启动过程:
- 打开浏览器并输入URL: http://localhost:8081/ 将显示Nexus Repository Manager欢迎屏幕。
- 在NXRM欢迎屏幕右上角上,单击“ 登录signin” 。将显示“登录”弹出框。
- 输入默认用户名,即“ admin ”和默认密码,即“ admin123” 。
- 单击“ 登录” 。登录对话框已关闭,您已登录NXRM。
项目配置
现在我们可以为自己项目建立一个仓库,比如名为my-repository,找到创建仓库的按钮:
进去后,选择maven2(hosted),如果你像做互联网上仓库的缓存代理,就选择maven2(proxy),hosted就是自己的私库。
名字输入 my-repository,其他可以默认,最下面一行选择Allow redeploy,这样可以反复试验,保存即可。
创建好后,可以在仓库列表中看到我们的仓库名称为my-repository,点按进入:
注意我们的仓库URL是:
http://127.0.0.1:8081/repository/my-release/
这样在我们项目中的pom.xml可以配置这个地址发布了:
<!-- 打包发布 --> <distributionManagement> <repository> <id>my-release</id><!--这个ID需要与你的release仓库的Repository ID一致--> <url>http://127.0.0.1:8081/repository/my-release/</url> </repository> </distributionManagement>
当然访问这个地址需要用户名和密码。
下一步设置用户名和密码,首先创建一个角色,比如testRole:
这里给与testRole的权限我们选择的是nx-all,熟悉之后,可以进行详细的定制。
然后选择右边users,创建本地用户,角色role选择我们建立的testRole。注意记住用户名和密码,需要在maven的 settings.xml中配置:
<server>
<id>my-release</id>
<username>test</username>
<password>test</password><!--这个密码就是你设置的密码-->
</server>
这里my-release就是我们的仓库名称,用户和密码是创建本地用户你设置的。
pom.xml文件最后是这样:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>wwww</artifactId> <version>1.0</version> <!-- 打包发布 --> <distributionManagement> <repository> <id>my-release</id><!--这个ID需要与你的release仓库的Repository ID一致--> <url>http://127.0.0.1:8081/repository/my-release/</url> </repository> </distributionManagement> </project>
发布配置
现在可以在项目中运行mvn clean deploy发布了,在 Idea执行deploy之后控制台输出如下:
[INFO] --- maven-deploy-plugin:2.7:deploy (default-deploy) @ wwww ---
Uploading: http://127.0.0.1:8081/repository/my-release/com/example/wwww/1.0/wwww-1.0.jar
Uploaded: http://127.0.0.1:8081/repository/my-release/com/example/wwww/1.0/wwww-1.0.jar (3 KB at 11.0 KB/sec)
Uploading: http://127.0.0.1:8081/repository/my-release/com/example/wwww/1.0/wwww-1.0.pom
Uploaded: http://127.0.0.1:8081/repository/my-release/com/example/wwww/1.0/wwww-1.0.pom (917 B at 7.6 KB/sec)
Downloading: http://127.0.0.1:8081/repository/my-release/com/example/wwww/maven-metadata.xml
Downloaded: http://127.0.0.1:8081/repository/my-release/com/example/wwww/maven-metadata.xml (291 B at 3.2 KB/sec)
Uploading: http://127.0.0.1:8081/repository/my-release/com/example/wwww/maven-metadata.xml
Uploaded: http://127.0.0.1:8081/repository/my-release/com/example/wwww/maven-metadata.xml (291 B at 3.3 KB/sec)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
最后到http://127.0.0.1:8081/确认:
以上项目源码: github
如何将自己的开源项目发布到Maven中央仓库中?
敏捷
以上所述就是小编给大家介绍的《自己搭建Maven服务器私服》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 搭建docker私服
- 为 Go module 搭建私服
- 搭建 nuget 私服及注意事项
- Mastodon 2.9.2 发布,用它搭建“私服”微博
- Mastodon 2.8.2 发布,用它搭建一个“私服”微博!
- mastodon 2.8.3 发布,用它搭建一个“私服”微博!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。