关闭

2013-12-16 21:06 45684人阅读 评论(8) 收藏 举报

本文章已收录于:

.embody { padding: 10px 10px 10px; margin: 0 -20px; border-bottom: solid 1px #ededed }
.embody_b { margin: 0; padding: 10px 0 }
.embody .embody_t,.embody .embody_c { display: inline-block; margin-right: 10px }
.embody_t { font-size: 12px; color: #999 }
.embody_c { font-size: 12px }
.embody_c img,.embody_c em { display: inline-block; vertical-align: middle }
.embody_c img { width: 30px; height: 30px }
.embody_c em { margin: 0 20px 0 10px; color: #333; font-style: normal }

私服是什么

私服,私有服务器,是公司内部Maven项目经常需要的东东,不总结一下,不足以体现出重视。Nexus是常用的私用Maven服务器,一般是公司内部使用。下载地址是http://www.sonatype.org/nexus/Go。默认端口8081,这里我选择最新版nexus-2.5.0-04。

常用功能

Nexus常用功能就是:指定私服的中央地址、将自己的Maven项目指定到私服地址、从私服下载中央库的项目索引、从私服仓库下载依赖组件、将第三方项目jar上传到私服供其他项目组使用。

开启Nexus服务后访问url地址http://localhost:8081/nexus/(推荐使用自己的ip地址),之后登录系统,用户名密码分别是:admin/admin123.

最频繁的就是点击左侧菜单栏的Repositories按钮

一般用到的仓库种类是hosted、proxy。Hosted代表宿主仓库,用来发布一些第三方不允许的组件,比如Oracle驱动、比如商业软件jar包。Proxy代表代理远程的仓库,最典型的就是Maven官方中央仓库、JBoss仓库等等。如果构建的Maven项目本地仓库没有依赖包,那么就会去这个代理站点去下载,那么如果代理站点也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。代理站点下载成功后再下载至本机。笔者认为,其实Maven这个自带的默认仓库一般情况下已经够大多数项目使用了。特殊情况时在配置新的仓库,指定url即可,一般熟悉ExtJS的人操作这个Nexus都没什么问题,单词不是很难,不明白的查查单词基本差不多。就是如果Sonatype公司对其做了国际化的处理就更好了。


hosted   类型的仓库,内部项目的发布仓库

releases 内部的模块中release模块的发布仓库

snapshots 发布内部的SNAPSHOT模块的仓库

3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去

proxy   类型的仓库,从远程中央仓库中寻找数据的仓库

group   类型的仓库,组仓库用来方便我们开发人员进行设置的仓库

maven项目索引

下载Maven项目索引,项目索引是为了使用者能够在私服站点查找依赖使用的功能


保存后后台会运行一个任务,点击菜单栏的Scheduled Tasks选项即可看到有个任务在RUNNING。 下载完成后,Maven索引就可以使用了,在搜索栏输入要搜索的项,就可以查到相关的信息。例如spring-core

就可以检索出它的相关信息,包括怎么配置依赖信息。我们要想使用这个私服仓库,先在项目pom中配置相关私服信息

指定仓库

  1. <repositories>
  2. <repository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </repository>
  13. </repositories>

指定插件仓库

  1. <pluginRepositories>
  2. <pluginRepository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </pluginRepository>
  13. </pluginRepositories>

这样只有本项目才在私服下载组件
这样这个Maven项目构建的时候会从私服下载相关依赖。当然这个配置仅仅是在此项目中生效,对于其他项目还是不起作用。如果相对Maven的其他项目也生效的话。需要修改全局的settings.xml文件。

修改settings.xml为

追加激活profile

  1. <activeProfiles>
  2. <activeProfile>central</activeProfile>
  3. </activeProfiles>

之后所有本机的Maven项目就在私服下载组件。(这样比较好)

项目的发布

  1. <distributionManagement>
  2. <repository>
  3. <id>user-release</id>
  4. <name>User Project Release</name>
  5. <url>http://192.168.1.103:8081/nexus/content/repositories/releases/</url>
  6. </repository>
  7. <snapshotRepository>
  8. <id>user-snapshots</id>
  9. <name>User Project SNAPSHOTS</name>
  10. <url>http://192.168.1.103:8081/nexus/content/repositories/snapshots/</url>
  11. </snapshotRepository>
  12. </distributionManagement>

注意配置了还是发布项目到私服失败,原因为没有权限,会出现401错误码,原因就是权限不够。


配置权限在settings.xml





注意Respository中的id一定要和server下的id一致,切记!!否则出现权限问题。

然后运行发布

clean deploy

在控制台发布成功

然后进入到私服上的仓库中,看一下确实存在刚刚发布的项目








宿主库——3rd party

假如我们下载了Oracle的驱动程序jar包想给其他项目组使用,就需要上传该jar包。选中宿主库——3rd party,之后选择Artifact Upload上传至宿主空间。





最后点击上传

11
1

.blog-ass-articl dd { color: #369; width: 99%; float: left; overflow: hidden; font: normal normal 12px/23px "SimSun"; height: 23px; margin: 0; padding: 0 0 0 10px; margin-right: 30px; background: url("http://static.blog.csdn.net/skin/default/images/blog-dot-red3.gif") no-repeat 0 10px }

参考知识库

Go知识库

1636关注|707收录

Oracle知识库

3456关注|252收录

Java EE知识库

12926关注|1215收录

更多资料请参考:

猜你在找

查看评论
8楼 zhuwenbin_09 2016-11-26 14:44发表 [回复] [引用] [举报]
(url=http://blog.csdn.net/)(img)http://i.WoTuLa.com/wp.png(/img)(/url)
7楼 zhuwenbin_09 2016-11-26 14:23发表 [回复] [引用] [举报]
6楼 zhuwenbin_09 2016-11-26 14:19发表 [回复] [引用] [举报]
<a href="http://ip.WoTuLa.com" target="_blank"><img src="http://i.WoTuLa.com/note.png?name=填写姓名&amp;say=这里填写您想说的内容。" style="max-width:400px;max-height:200px;" border="0" title=""></a>
5楼 netapplay 2016-09-26 15:26发表 [回复] [引用] [举报]
hello world
4楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
3楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
2楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
[img=http://i.WoTuLa.com/wp.png]
1楼 AnXian_RuoLong 2015-12-31 14:12发表 [回复] [引用] [举报]
发表评论
  • 用 户 名:
  • liuguoyun_123456
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

.tag_list { background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #D7CBC1; color: #000000; font-size: 12px; line-height: 20px; list-style: none outside none; margin: 10px 2% 0 1%; padding: 1px }
.tag_list h5 { background: none repeat scroll 0 0 #E0DBD3; color: #47381C; font-size: 12px; height: 24px; line-height: 24px; padding: 0 5px; margin: 0 }
.tag_list h5 a { color: #47381C }
.classify { margin: 10px 0; padding: 4px 12px 8px }
.classify a { margin-right: 20px; white-space: nowrap }

#popup_mask { position: absolute; width: 100%; height: 100%; background: #000; z-index: 9999; left: 0px; top: 0px; opacity: 0.3; display: none }

关闭

2013-12-16 21:06 45684人阅读 评论(8) 收藏 举报

本文章已收录于:

.embody { padding: 10px 10px 10px; margin: 0 -20px; border-bottom: solid 1px #ededed }
.embody_b { margin: 0; padding: 10px 0 }
.embody .embody_t,.embody .embody_c { display: inline-block; margin-right: 10px }
.embody_t { font-size: 12px; color: #999 }
.embody_c { font-size: 12px }
.embody_c img,.embody_c em { display: inline-block; vertical-align: middle }
.embody_c img { width: 30px; height: 30px }
.embody_c em { margin: 0 20px 0 10px; color: #333; font-style: normal }

私服是什么

私服,私有服务器,是公司内部Maven项目经常需要的东东,不总结一下,不足以体现出重视。Nexus是常用的私用Maven服务器,一般是公司内部使用。下载地址是http://www.sonatype.org/nexus/Go。默认端口8081,这里我选择最新版nexus-2.5.0-04。

常用功能

Nexus常用功能就是:指定私服的中央地址、将自己的Maven项目指定到私服地址、从私服下载中央库的项目索引、从私服仓库下载依赖组件、将第三方项目jar上传到私服供其他项目组使用。

开启Nexus服务后访问url地址http://localhost:8081/nexus/(推荐使用自己的ip地址),之后登录系统,用户名密码分别是:admin/admin123.

最频繁的就是点击左侧菜单栏的Repositories按钮

一般用到的仓库种类是hosted、proxy。Hosted代表宿主仓库,用来发布一些第三方不允许的组件,比如Oracle驱动、比如商业软件jar包。Proxy代表代理远程的仓库,最典型的就是Maven官方中央仓库、JBoss仓库等等。如果构建的Maven项目本地仓库没有依赖包,那么就会去这个代理站点去下载,那么如果代理站点也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。代理站点下载成功后再下载至本机。笔者认为,其实Maven这个自带的默认仓库一般情况下已经够大多数项目使用了。特殊情况时在配置新的仓库,指定url即可,一般熟悉ExtJS的人操作这个Nexus都没什么问题,单词不是很难,不明白的查查单词基本差不多。就是如果Sonatype公司对其做了国际化的处理就更好了。


hosted   类型的仓库,内部项目的发布仓库

releases 内部的模块中release模块的发布仓库

snapshots 发布内部的SNAPSHOT模块的仓库

3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去

proxy   类型的仓库,从远程中央仓库中寻找数据的仓库

group   类型的仓库,组仓库用来方便我们开发人员进行设置的仓库

maven项目索引

下载Maven项目索引,项目索引是为了使用者能够在私服站点查找依赖使用的功能


保存后后台会运行一个任务,点击菜单栏的Scheduled Tasks选项即可看到有个任务在RUNNING。 下载完成后,Maven索引就可以使用了,在搜索栏输入要搜索的项,就可以查到相关的信息。例如spring-core

就可以检索出它的相关信息,包括怎么配置依赖信息。我们要想使用这个私服仓库,先在项目pom中配置相关私服信息

指定仓库

  1. <repositories>
  2. <repository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </repository>
  13. </repositories>

指定插件仓库

  1. <pluginRepositories>
  2. <pluginRepository>
  3. <id>nexus</id>
  4. <name>nexus</name>
  5. <url>http://192.168.1.103:8081/nexus/content/groups/public/</url>
  6. <releases>
  7. <enabled>true</enabled>
  8. </releases>
  9. <snapshots>
  10. <enabled>true</enabled>
  11. </snapshots>
  12. </pluginRepository>
  13. </pluginRepositories>

这样只有本项目才在私服下载组件
这样这个Maven项目构建的时候会从私服下载相关依赖。当然这个配置仅仅是在此项目中生效,对于其他项目还是不起作用。如果相对Maven的其他项目也生效的话。需要修改全局的settings.xml文件。

修改settings.xml为

追加激活profile

  1. <activeProfiles>
  2. <activeProfile>central</activeProfile>
  3. </activeProfiles>

之后所有本机的Maven项目就在私服下载组件。(这样比较好)

项目的发布

  1. <distributionManagement>
  2. <repository>
  3. <id>user-release</id>
  4. <name>User Project Release</name>
  5. <url>http://192.168.1.103:8081/nexus/content/repositories/releases/</url>
  6. </repository>
  7. <snapshotRepository>
  8. <id>user-snapshots</id>
  9. <name>User Project SNAPSHOTS</name>
  10. <url>http://192.168.1.103:8081/nexus/content/repositories/snapshots/</url>
  11. </snapshotRepository>
  12. </distributionManagement>

注意配置了还是发布项目到私服失败,原因为没有权限,会出现401错误码,原因就是权限不够。


配置权限在settings.xml





注意Respository中的id一定要和server下的id一致,切记!!否则出现权限问题。

然后运行发布

clean deploy

在控制台发布成功

然后进入到私服上的仓库中,看一下确实存在刚刚发布的项目








宿主库——3rd party

假如我们下载了Oracle的驱动程序jar包想给其他项目组使用,就需要上传该jar包。选中宿主库——3rd party,之后选择Artifact Upload上传至宿主空间。





最后点击上传

11
1

.blog-ass-articl dd { color: #369; width: 99%; float: left; overflow: hidden; font: normal normal 12px/23px "SimSun"; height: 23px; margin: 0; padding: 0 0 0 10px; margin-right: 30px; background: url("http://static.blog.csdn.net/skin/default/images/blog-dot-red3.gif") no-repeat 0 10px }

参考知识库

Go知识库

1636关注|707收录

Oracle知识库

3456关注|252收录

Java EE知识库

12926关注|1215收录

更多资料请参考:

猜你在找

查看评论
8楼 zhuwenbin_09 2016-11-26 14:44发表 [回复] [引用] [举报]
(url=http://blog.csdn.net/)(img)http://i.WoTuLa.com/wp.png(/img)(/url)
7楼 zhuwenbin_09 2016-11-26 14:23发表 [回复] [引用] [举报]
6楼 zhuwenbin_09 2016-11-26 14:19发表 [回复] [引用] [举报]
<a href="http://ip.WoTuLa.com" target="_blank"><img src="http://i.WoTuLa.com/note.png?name=填写姓名&amp;say=这里填写您想说的内容。" style="max-width:400px;max-height:200px;" border="0" title=""></a>
5楼 netapplay 2016-09-26 15:26发表 [回复] [引用] [举报]
hello world
4楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
3楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
2楼 AnXian_RuoLong 2015-12-31 14:13发表 [回复] [引用] [举报]
[img=http://i.WoTuLa.com/wp.png]
1楼 AnXian_RuoLong 2015-12-31 14:12发表 [回复] [引用] [举报]
发表评论
  • 用 户 名:
  • liuguoyun_123456
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

.tag_list { background: none repeat scroll 0 0 #FFFFFF; border: 1px solid #D7CBC1; color: #000000; font-size: 12px; line-height: 20px; list-style: none outside none; margin: 10px 2% 0 1%; padding: 1px }
.tag_list h5 { background: none repeat scroll 0 0 #E0DBD3; color: #47381C; font-size: 12px; height: 24px; line-height: 24px; padding: 0 5px; margin: 0 }
.tag_list h5 a { color: #47381C }
.classify { margin: 10px 0; padding: 4px 12px 8px }
.classify a { margin-right: 20px; white-space: nowrap }

#popup_mask { position: absolute; width: 100%; height: 100%; background: #000; z-index: 9999; left: 0px; top: 0px; opacity: 0.3; display: none }

maven操作的更多相关文章

  1. IntelliJ IDEA中项目报错org.xml.sax.SAXParseException; lineNumber: 3; columnNumber: 8 或maven操作compile报resource使用utf8这样的编码错

    问题:项目开发工具已经setting成utf-8 并且项目各方面的配置文件包括maven这些的pom.xml里的配置都已经设置为utf-8 但是还报错 IntelliJ IDEA中项目报错org.xm ...

  2. eclipse 中的maven操作

    首先,maven中常用的几个命令: clean  清空target目录 compile  编译 package  打包到target目录 install  打包到本地仓库 -------------- ...

  3. eclipse的maven操作无反应

    第一 查eclipse能不能正常用 hi world.java 第二 查maven能不能正常用 cmd: mvn -v 第三 看看maven和eclipse是不是64位之类的 第四 maven和ecl ...

  4. java maven 操作 收集的一些命令

    maven打包: mvn clean package -Dmaven.test.skip=true 运行jar: java -jar target/spring-boot-scheduler-1.0. ...

  5. maven操作手册

    ===Maven的安装=== http://blog.csdn.net/yang5726685/article/details/56486479 ===Maven的jar包仓库地址配置=== http ...

  6. eclipse Maven操作出现No compiler is provided in this environment.Perhaps you are running on a JRE rather than a JDK?

    右键 pom.xml -> Run as -> Maven install 后出现类似如下错误: 解决方法: 1)选择项目后,点击 eclipse 导航栏中 [Window]-->[ ...

  7. Intellij idea操作maven时控制台中文乱码

    只留存记录 windows环境下,Intellij idea12中maven操作时,控制台中文乱码问题(编译报错或者clean install时出现的其他错误描述乱码) 在cmd中mvn中文正常显示, ...

  8. IDEA操作maven时控制台中文乱码

    windows环境下,Intellij idea12中maven操作时,控制台中文乱码问题(编译报错或者clean install时出现的其他错误描述乱码) 在cmd中mvn中文正常显示,log4j打 ...

  9. maven第二天——重要概念与其它操作

    一.在eclipse中建立工程 在day01中我们搭建了eclipse的maven环境,接下来我们开始建立maven项目 1.在eclipse中建立JAVA工程 file->new->ma ...

随机推荐

  1. javscript闭包的准备工作 -- 作用域与作用域链

    作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理.今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望 ...

  2. Eclipse开发STM32出现找不到函数的情况的解决方法

    问题表现: 在明明引用了头文件的情况下,出现“undefined reference to  `…'”的情况,例如下图: 解决方法: 在左边的数据目录定位到“system\src\stm32f0-st ...

  3. Sublime Text3快捷键实用总结

    今天想给大家分享一个我自己最喜欢用的一个编辑器——Sublime Text3的常用快捷键 相信大家每天和代码打交道,接触时间最长的莫过于编辑器了吧,而我就特别喜欢用Sublime Text3这个编辑器 ...

  4. 高清VGA编码器|上海视涛科技

    VGA编码器(E200)简介 高清VGA编码器是上海视涛科技出品的高性能VGA编码产品.该VGA编码器是上海视涛科技完全自主研发,并适用于VGA信号的编码采集及网络传输的专用硬件设备.可兼容各厂家的N ...

  5. Asp.net中GridView使用详解(引)

    GridView无代码分页排序GridView选中,编辑,取消,删除GridView正反双向排序GridView和下拉菜单DropDownList结合GridView和CheckBox结合鼠标移到Gr ...

  6. php并发编程相关扩展

    Stream:PHP内核提供的socket封装Sockets:对底层Socket API的封装Libevent:对libevent库的封装Event:基于Libevent更高级的封装,提供了面向对象接 ...

  7. redis使用笔记

    mysql---select * from table where xx;insert into table(name1,name2..) values(value1,value2);delete f ...

  8. 简单看看这两个类 String和StringBuilder

    我记得以前在园子里面讨论这两个类的文章有很多很多,并且还拿出了很多的测试报告,在什么情况下,谁比谁快,在什么情况下,该用谁 不该用谁等等这些,我这里就不比较了,我就简单看看他们里面的内部实现,那就先看 ...

  9. Nginx中文手册

    Nginx 常见应用技术指南[Nginx Tips] 第二版 作者:NetSeek http://www.linuxtone.org (IT运维专家网|集群架构|性能调优) 目 录 一. Nginx ...

  10. c#-轮询算法

    这两天做东西,业务上有个特殊的需求,在用户访问页面的时候,针对某一行代码进行控制,按照概率来进行显示,我做的是针对当前页面的曝光进行处理,曝光代码是第三方的,页面上只要有这段代码就算是执行了这段曝光代 ...