• Maven零散笔记——配置Nexus


    安装&配置Nexus 

    解压后,应该获得如下目录结构: 

    • nexus-2.0.6是nexus服务主目录
    • sonatype-work是真正的仓库,同时包含了nexus的配置,如定时任务、用户配置等




    nexus支持如下命令: 

    引用
    nexus { console | start | stop | restart | status | dump }



    端口配置在nexus/conf/nexus.properties文件中,文件如下: 

    # Sonatype Nexus
    # ==============
    # This is the most basic configuration of Nexus.
    
    # Jetty section
    application-port=8081
    application-host=0.0.0.0
    nexus-webapp=${bundleBasedir}/nexus
    nexus-webapp-context-path=/nexus
    
    # Nexus section
    nexus-work=${bundleBasedir}/../sonatype-work/nexus
    runtime=${bundleBasedir}/nexus/WEB-INF
    pr.encryptor.publicKeyPath=/apr/public-key.txt
    

      

     


    如果你需要修改nexus服务端口或IP,上面这段修改就是了。 

    启动后,如下界面: 

    默认管理员帐号: 
    用户名:admin 
    密码:admin123 

    通常可以在maven工具里找到的包,也可以在这里找到: 


    定制任务 
    当然,为了让你的nexus更加智能,需要做一些定时任务,譬如定期下载索引,加快本地mvn检索速度。 
    以建立定期下载索引为例,在Administration选项中找到Scheduled Tasks,在窗口页面点击Add,进行配置: 


    除此之外,我还经常要添加一些额外的jar到nexus中,譬如我要追加BC的组件包到nexus中,供团队其他开发成员使用。 
    找到View/Repositories,打开Repositories窗口,选择3rd party,进行如下配置: 

    之后,就可以在这里找到该jar了: 


    私服配置 
    为了让你的maven默认访问你的私服,需要配置settings.xml: 

    	<mirrors>
    ...
    		<mirror>
    			<id>nexus</id>
    			<mirrorOf>*</mirrorOf>
    			<name>Nexus Mirror</name>
    			<url>http://<Your Nexus IP>/nexus/content/groups/public</url>
    		</mirror>
    ...
    	</mirrors>
    ...
    	<profiles>
    		<profile>
    			<id>nexus</id>
    			<repositories>
    				<repository>
    					<id>nexus</id>
    					<name>local private nexus</name>
    					<url><Your Nexus IP>/nexus/content/groups/public</url>
    					<releases>
    						<enabled>true</enabled>
    					</releases>
    					<snapshots>
    						<enabled>false</enabled>
    					</snapshots>
    				</repository>
    				<repository>
    					<id>nexus</id>
    					<name>local private nexus</name>
    					<url>http://<Your Nexus IP>/nexus/content/groups/public-snapshots</url>
    					<releases>
    						<enabled>false</enabled>
    					</releases>
    					<snapshots>
    						<enabled>true</enabled>
    					</snapshots>
    				</repository>
    
    			</repositories>
    			<pluginRepositories>
    				<pluginRepository>
    					<id>nexus</id>
    					<name>local private nexus</name>
    					<url>http://<Your Nexus IP>/nexus/content/groups/public</url>
    					<releases>
    						<enabled>true</enabled>
    					</releases>
    					<snapshots>
    						<enabled>false</enabled>
    					</snapshots>
    				</pluginRepository>
    				<pluginRepository>
    					<id>nexus</id>
    					<name>local private nexus</name>
    					<url>http://<Your Nexus IP>/nexus/content/groups/public-snapshots</url>
    					<releases>
    						<enabled>false</enabled>
    					</releases>
    					<snapshots>
    						<enabled>true</enabled>
    					</snapshots>
    				</pluginRepository>
    			</pluginRepositories>
    		</profile>
    	</profiles>
    ...
    	<activeProfiles>
    		<activeProfile>nexus</activeProfile>
    	</activeProfiles>
    

      


    将jar部署至Nexus 

    如果通过Eclipse Maven工具,或者直接操作Maven命令行,将jar部署至nexus: 
    pom.xml 

     
    <project>  
    ...  
    <distributionManagement>  
      <repository>  
        <id>nexus-releases</id>  
          <name>Nexus Release Repository</name>  
          <url>http://<Your Nexus IP>/nexus/content/repositories/releases/</url>  
      </repository>  
      <snapshotRepository>  
        <id>nexus-snapshots</id>  
        <name>Nexus Snapshot Repository</name>  
        <url>http://<Your Nexus IP>/nexus/content/repositories/snapshots/</url>  
      </snapshotRepository>  
    </distributionManagement>  
    ...  
    </project>  
    

      



    settings.xml 

    <settings>  
    ...  
    <servers>  
      <server>  
        <id>nexus-releases</id>  
        <username>admin</username>  
        <password>admin123</password>  
      </server>  
      <server>  
        <id>nexus-snapshots</id>  
        <username>admin</username>  
        <password>admin123</password>  
      </server>    
    </servers>  
    ...  
    </settings>  
    

      

    最后,在项目目录中执行mvn deploy 

    如果想要在发布jar的同时,把source一通发布,需要做这个配置: 

    			<plugin>
    				<groupId>org.apache.maven.plugins</groupId>
    				<artifactId>maven-source-plugin</artifactId>
    				<executions>
    					<execution>
    						<goals>
    							<goal>jar</goal>
    						</goals>
    					</execution>
    				</executions>
    			</plugin>
    

      

  • 相关阅读:
    【甘道夫】通过Mahout构建贝叶斯文本分类器案例具体解释
    hdu 5044 树区间操作最后输出/ lca+dfs
    UVA 1371
    裴蜀定理
    iOS 开发系列:CoreData Object 变成 Fault 的一种方式
    UVa 10633
    校赛热身赛 Problem D. Unsolved Mystery
    校赛热身赛 Problem D. Unsolved Mystery
    NOIP2005普及组第4题 循环
    NOIP2005普及组第4题 循环
  • 原文地址:https://www.cnblogs.com/sallet/p/3951009.html
Copyright © 2020-2023  润新知