配置maven私服nexus

所需积分/C币:10 2018-09-13 14:27:18 1.08MB PDF
7
收藏 收藏
举报

该文档是关于配置maven私服nexus,对maven学习者有很大的帮助
镜像更为常用的作法是结合私服,如下配置 < mirror> <id> mirrorEd </id> <mirrorOf>*s/mirrorOf> <name>Human Readable Name for this mirror. </name> <uri>http://my.repositorycom/repo/path</url> </mirror> 这里即是将对所有仓库的请求转发至私服http://my.repository.com/repo/path 1.3.4私服 私服一般采用 nexus部署 1.35添加其他远程仓库 1、添加一个其他的远程库只需在项目的 pom. xm文件中添加以下配置即可 <repositories> <repository> <id>jboss</id> <name>JBoss Repository </name> <uri>http://repositoryjbossorg/nexus/content/groups/public/</url> <snapshots> <enabled > false </enabled> </snapshots> <releases> <enabled>true </enabled> </releases> <layout>default</layout> </repository> </repositories> snapshots false表示关闭jbos5远程仓库的 Snapshots版本下载 releases true表示打开 jboss远程仓库的 Release版本下载 2、测试下 jboss仓库是否配置正确,添加一个 jboss仓库独有的依赖即可,这里选用xom1.2,配置 如下 <dependency> < groupld> xoms/groupld> <artifactId>xom</artifactId> <version>1.2</version> </dependency> 3、发现下载成功即可 4、远程服务器的验证,只需在 settings.xm添加如下代码即可 <server> <id> deploymentRepo</id> <username>repouser<username> <password> repopwd</password> </server> 注:id要与配置的远程服务器id对应比如boss 2、安装与配置 Nexus 2.1安装与基本配置 1.下载安装包 从官网下载最新的nexus安转包:http://www.sonatype.org/nexus/archived/ 本文下载的是 nexus-2.1.2-06- bundle. tar. gz版本 然后 tar xzⅵfneⅫus-2.1.2-06- bundle. tar.gz解压该安装包,解压后会出现这两个文件夹 nexus-2.114-01 sonatype-work centos nexus-2.11. 2-06-bunclelt pwd home/xuLlugen/sof tHare/nexus-211,2-06-bundle [rooted 6 centos nexus-2. 11. 2-06-bundleltt 15 nexus-2.11. 2-56 sonatype-work 注∶安装ηexus本地仓库默认的jar包存储位置是:/ sonatype- work/ nexus/ storage/ centra。由于 Central仓库占用存储较大所以要注意存储位置。 2修改配置文件1:/home/ nexus/,neus-2114-01/ conf/nexus, properties Sonatype Nexus #============= This is the most basic configuration of Nexus Jetty section #配置端口信息 application-port=8086 application-host=0.0.0.0 nexus-Webapp=S(bundle Basediry/nexus #配置I端口访问 #http://192.168.10.56:8086/nexus/可修改为:/ nexus-Webapp-context-path=/nexus Nexus section #配置work目录地址 Maven"仓库JAR缓存地址可修改其他地址eg:${ bundle Basedin}/ nexus work/nexus nexus-work=S(bundle BasedirJ//sonatype-work/nexus runtime=$bundleBasedir/nexus/WEB-INF 3:修改配置文件2: nexus-2.11.4-01/bin/ nexus #NEXUS HOME= #如果目录改变配置,如果修改了运行路径 NEXUS HOME="/home/nexus/nexus-2111-01 #RUN AS USER= # nexus启动用户 RUN_AS_USER=jhd 注意 RUNASUSER一般不推荐设置为root 如果开始是以root用户安装且设置了 RUNASUSER为root启动。再去设置 RUNASUSER用户的时候 会出现一系列的错误,主要是由于权限限制可以使用 sudo chmod-Ra+x/usr/loca/ nexus设置权限这里的目录是 nexus的安装位置,例如我的 sudo chmod -R a+x/home/software/nexus-2. 11.2-06-bundlen 还需要设置下/ ar/run/目录的权限否则会出现pid无法写入的错误 4启动 nexus服务: [root@ Centos-Slavel bin# /nexus start 大大大大大大大大大大大大大大大大大大六大大大大大大大大大大大大大大大大大大大大 WARNING -NOT RECOMMENDED TO RUN AS ROOT 大大大大大火大大大大火大大大大大大火大大大大大大大大大大★火大大大大大火大大大大 Starting Nexus OSs Started Nexus oss 如果启动成功通过访问用浏览器访问:htt:/ilp:8086/ nexus/会看到以下管理界面 Sonatype Nexus N Nexus Nexus Repository Manager Resources sdy foe aeepr ale tApestry HaragdiHnr? 时增吗 Add saipontnt le donot a BatEau 相N一C的aM做 Nexus的默认用户名为 admin密码为 admin123 5设置 nexus开机启动 cp nexus /etc/init.d/ chkconfig --add nexus chkconfig nexus on 2.2本地 Maven使用 Nexus 1 maven使用本地库 在 maven的 setting.xm中设置:(默认设置) <?xmI version="1.0"?> settings xmins="hTtp: //maven. apache org/settings/1.0.0 xmins:xsI="http://www.w3.org/2001/xmlschema-instance xsischemalocation="http://maven.apache.org/settings/1.0.0 http://maven.apacheorg/xsd/settings-1.0.0.xsd"> <!- localRepository是设置本地仓库地址的。默认位置为:${ user homel/ m2 repository <!- Windows参考格式:<loca| Repository>d:/ repository</ ocalRepository>--> <localRepository >/Users/xuliugen/m2/repository </ localRepository> <servers> <server> <id>releases</id> <username>admin</username> <password> admin 123</password> </server> <server> <id> snapshots < /id> <username>admin </username> <password> admin 123</password> </server> </servers> <profiles> <profile> <id>MyNexus</id> <repositories> <repository> <id> MyNexus </id> <url>http://ip:8081/nexus/content/groups/public</url> <releases> <enabled >true </enabled> <update Policy> daily </update Policy> checksum Policy> warn</checksum Policy> </releases> <snapshots> <enabled>true</enabled> checksum Policy> fail/checksum Policy> </snapshots> </repository> </repositories> <plugin Repositories> <plugin Repository> <id myNexus </id> <urlshttp://ip:8081/nexus/content/groups/public</url> <releases> <enabled>true</enabled> <checksum Policy> warn </checksum Policy> </releases> <snapshots> <enabled>true s/enabled> <checksumPolicy> fail</checksumPolicy> </snapshots> </pluginRepository> </plugin Repositories> </profile> </profiles> <active Profiles> <activeProfile> MyNexus </active Profile> </active Profiles> </settings> 2、如果只想在某个项目中使用本地库则在该项目的 pom.xm中 <?xml version="1.0"encoding="UTF-8"?> <settings> <mirrors> <mirror> <I--This sends everything else to /public--> <id>nexus</id> <mirrorOf>*</mirrorOf> <!--<url>http://repol.mavenorg/maven2/</url>--> <url>http://115.159.152.67:8086/nexus/content/groups/public</url> </mirror> </mirrors> <profiles> <profile> <id>nexus</id> <!--Enable snapshots for the built in central repo to direct--> <I--all requests to nexus via the mirror--> <repositories> <repository> <id>central</id> <url>http://repol.mavenorg/maven2/</url> <releases> <enabled>true </enabled> </releases> <snapshots> <enabled>true</enabled> </snapshots> </repository> </repositories> <plugin Repositories> <pluginRepository> <id> central</id> <url>http://central</url> <releases> <enabled >true </enabled> </releases> <snapshots> <enabled>true </enabled> </snapshots> </plugin Repository> </pluginRepositories> /profile> </proFiles> <active Profiles> <I--make the profile active all the time--> <activeProfile >nexus </active Profile> </active Profiles> </settings> 2.3如何部署到远程 Nexus 1、在项目文件Pom中添加 < distribution Management> <repository> <id > releases</id> <name> Nexus Release Repository </name> <url>http://ip:8081/nexus/content/repositories/releases/</url> </repository> <snapshotRepository> <id> snapshots </id> <name Nexus Snapshot Repository </name> <url>http://ip:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distribution Management> 其中d为在 setting. xm文件中 server所对应的d,一般为默认,无需修改 24验证安装结果 1、在ldea中使用 Maven termianl(快捷键:At+F12) 执行命令: mvn clean mvn deploy 如果在编译的时候还会执行test,请执行: mvn clean mvn install -D maven. test.skip=true 可以看到 Termina中输出一下信息: Downloading:http://119.29.17.244:E081nexus/content/repasitories/sr Downloadedhttp://119.29.17.244:8081/nexus/content/repositories/sn Uploadinghttp://119.29.17.244:8081/nexus/content/repositories/snap UpLoaded:http://119.29.17.244:0001/nexus/content/repositories/snaps 表示正将编译之后的a上传到 maven仓库中 2、查看远程 Nexus ro/public/org/albert/security Last Modifiec Size Description securityapolkan, Tru Dec 1711: 42: 17 cST 2015 security core/ THu Dee 1711: 45: 16 CST 2015 此[nuD171145:18CST gerurityfacadel Thu n 17 wecurityrinfra/ ecurity/ Tru Dec1711:45:13C5T201 NAm产 It Modified mavEn-metadata, xml Thu Dec1711:41655T2015783 enmetadata smL md5 ThDP1711:416:sT2m5 mavEf-metadata, xml shal Thu Dec111::16015 5 curity- infra1.0.020151217.032821iar Thu pec17112829-T20152303 swurity-infta-00-20151217032829.1-ar,md5 Thu Dec 1711:28 29&5T 2015 32 sacunty-Intra-100-2051217032829.1.af, sha1 Thu Dec 171122829-sT 2015 4J 5 cunity-infra10-20151217032821 pom Thu Dee17112829T2015154 suy加nfa-1,0A-201512170378291 tT. nmH Thu De1711:829:T2015 sacunty-intra-0 -20151214.032829 1Pom sha1 I hu Dec 1511:28 29-51 2015 4J sAcurity'-infra-f00-20151217034617ar hu dee1?11:46:16·sT20523603 sacuntyinfra-100-20151217-034615-2.ar,mdk Thu Dec 1711:464 16 EsT 2015 32 securityinfra-L00-7015121703c615-jar sha1 Thu Dpc 1711:461.5T 2m15 5pcurity'-intra10A20151217034616-2 m Thu Dec1111sT2015154 securit infra-1.0A20151217.0346152 pom.d Thy dec1711:46:16T20153 secunity.0n 20151217-034616 2-nm sha1 Thu DPC 17 11:416.iT 2m15 4] 3、其他高级配置 31添加boss代理资源库 先了解下 nexus的资源库类型: Hosted Repository- nexus本机的资源库(相当于 nexus所在服务器硬盘上已经存在的jar、 pom文件库) Proxy Repository-代理库,很多开源官方组织都在互联网上公布了 Repository,供全世界的开发 者使用, nexus中设置该类型的资源库后,其它使用 nexus的开发者,表面上是在请求 nexus服务器 上的ar包,但 nexus实质是背后是在请求这些互联网资源,首次会把服务器上没有的资源,从网上 download到 nexus服务器(以文件形式保存到硬盘上),然后再返回给开发者,下次再有同样的 pom/jar请求时,直接从服务器硬盘上返回,不再请求互联网 Repository Group-资源组,比如我们有很多资源库∶资源库A、资源库B.,可以把它们再成组τ 个特殊的资源C,然后其它开发人员,在 maven里配置资源C地址,这样 maven在向资源C请求 ar包里,实质会搜索资源A、资源B 1.maven默认的官方资源库http://repol.mavenorg/maven2/很多第三方的ar包没有,所以 我再添加一个 jboss的资源库 2、点击左侧的 Repositories,然后再点击右侧的Add,会弹出下拉菜单,选择 Proxy Repository Sonatype nexus Sonatype Welcome Repositories Nevus 它 Refresh@/dd..@ Dalate Trash-·口 Artifact Spank Hester Repository o Public Rep Proxy RePost Advanced search Brd party Virtual Repository Views/ Repositories Repository Group Ccntral Repositories Central 1 shadow irtual Repository Targets Codehaus snapshots Sysleir Feeis nosed curty Snapsho怒 Administration Select a recond to vicw the details 3、接下来,参考下图填写

...展开详情
试读 15P 配置maven私服nexus
立即下载 低至0.43元/次 身份认证VIP会员低至7折
一个资源只可评论一次,评论内容不能少于5个字
您会向同学/朋友/同事推荐我们的CSDN下载吗?
谢谢参与!您的真实评价是我们改进的动力~
  • 分享达人

    成功上传6个资源即可获取
关注 私信 TA的资源
上传资源赚积分or赚钱
    最新推荐
    配置maven私服nexus 10积分/C币 立即下载
    1/15
    配置maven私服nexus第1页
    配置maven私服nexus第2页
    配置maven私服nexus第3页

    试读结束, 可继续读2页

    10积分/C币 立即下载 >