今日闲来无事,就搭建了个 Nexus 私服。
这种文章烂大街了,但我还是记录一下吧,方便用到。
[下载链接:http://www.sonatype.com/download-oss-sonatype] (http://www.sonatype.com/download-oss-sonatype)
解压完成并开启 Nexus 服务后输入:http://localhost:8081/nexus/
之后登录系统
####账号:admin
####密码:admin123
随后点击左侧菜单栏的 Repositories 按钮
下面引用我从搜索引擎找到的:
一般用到的仓库种类是 hosted、proxy。Hosted 代表宿主仓库,用来发布一些第三方不允许的组件,比如 oracle 驱动、比如商业软件 jar 包。
Proxy 代表代理远程的仓库,最典型的就是 Maven 官方中央仓库、JBoss 仓库等等。
如果构建的 Maven 项目本地仓库没有依赖包,那么就会去这个代理站点去下载,那么如果代理站点也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是 proxy。
代理站点下载成功后再下载至本机。
其实 Maven 这个自带的默认仓库一般情况下已经够大多数项目使用了。
特殊情况时在配置新的仓库,指定 url 即可,一般熟悉 ExtJS 的人操作这个 Nexus 都没什么问题,单词不是很难,不明白的查查单词基本差不多。
-
hosted 类型的仓库,内部项目的发布仓库
-
releases 内部的模块中 release 模块的发布仓库
-
snapshots 发布内部的 SNAPSHOT 模块的仓库
-
3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去
-
proxy 类型的仓库,从远程中央仓库中寻找数据的仓库
-
group 类型的仓库,组仓库用来方便我们开发人员进行设置的仓库
maven 项目索引
#### 下载Maven项目索引,项目索引是为了使用者能够在私服站点查找依赖使用的功能
![alt](http://img.blog.csdn.net/20130613133516593 'alt')
#### 保存后后台会运行一个任务,点击菜单栏的Scheduled Tasks选项即可看到有个任务在RUNNING。 下载完成后,Maven索引就可以使用了,在搜索栏输入要搜索的项,就可以查到相关的信息。例如spring-core
![alt](http://img.blog.csdn.net/20130613135224171 'alt')
#### 就可以检索出它的相关信息,包括怎么配置依赖信息。我们要想使用这个私服仓库,先在项目pom中配置相关私服信息
## 指定仓库
<repositories>
<repository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.100:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
指定插件仓库
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>nexus</name>
<url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
</pluginRepositories>
项目中私服下载组件
#### 这样这个Maven项目构建的时候会从私服下载相关依赖。当然这个配置仅仅是在此项目中生效,对于其他项目还是不起作用。如果相对Maven的其他项目也生效的话。需要修改全局的settings.xml文件。
![alt](http://img.blog.csdn.net/20130613140029468 'alt')
<profile>
<repositories>
<repository>
<id>central</id>
<name>central</name>
<url>http://192.168.0.100:8081/nexus/content/groups/public/</url>
<layout>default</layout>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>central</activeProfile>
</activeProfiles>
之后所有本机的 Maven 项目就在私服下载组件。(这样比较好)
嗯,就这些了吧。发布什么的,估计我也用不到我也就不写啦。
ps:(我才不说我懒的)
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于