maven系列:项目部署

前一讲,我们建立以可以上传到私服的账号,这一讲,我们来讲讲如何操作才能发布自己的项目到私服,供别人使用一)在pom.xml文件中添加配置代码片段

  1. <distributionManagement>
  2.         <repository>
  3.                 <id> nexus-releases</id>
  4.                 <name> Nexus Release Repository</name>
  5.                 <url>http://localhost:8081/repository/maven-releases/</url>
  6.         </repository>
  7.         <snapshotRepository>
  8.                 <id> nexus-snapshots</id>
  9.                 <name> Nexus Snapshot Repository</name>
  10.                 <url>http://localhost:8081/repository/maven-snapshots/</url>
  11.         </snapshotRepository>
  12. </distributionManagement>

复制代码




二)在maven的setting.xml文件添加如下代码片段
 

  1.         <server>
  2.       <id>nexus-releases</id>
  3.       <username>deployment</username>
  4.       <password>deployment123</password>
  5.     </server>
  6.         <server>
  7.       <id>nexus-snapshots</id>
  8.       <username>deployment</username>
  9.       <password>deployment123</password>
  10.     </server>

复制代码




注意:两个文件中的id需要对应上

三)部署到私服
右击项目-》Run as-》Run Configurations
mvn27.png

点击run,我们看一下日志
mvn28.png

嗯,通过日志我们看到了项目打成了jar包并上传到了私服仓库(其中测试的jar包带有时间戳,这是因为maven考虑到开发环境会不停的更新代码并上传,注意就比较简单,要不然每次都改版本号,岂不是疯了,我们看到了大厂的良心之作,小细节都很暖心的)

四)依赖确认
mvn29.png
嗯,输入name,我们清楚的看到了我们上传上去的jar包
点击上去,我们就看到所有信息
mvn30.png


我们再去本地仓库确认一下,ok
mvn31.png 这和我们从网上下下来的依赖简直一模一样啊,非常的棒 五)几个命令 mvn clean package:清理、编译、测试、打包 mvn clean install:清理、编译、测试、打包、安装到本地仓库,比如你自己负责了3个工程的开发,互相之间有依赖,那么如果你开发好其中一个工程,需要在另外一个工程中引用它,此时就需要将开发好的工程jar包安装到本地仓库,然后才可以在另外一个工程声明对它的依赖,此时会直接取用本地仓库中的jar包 mvn clean deploy:清理、编译、测试、打包、安装到本地仓库、部署到远程私服仓库,这个其实就是你负责的工程写好了部分代码,别人需要依赖你的jar包中提供的接口来写代码和测试。此时你需要将snapshot jar包发布到私服的maven-snapshots仓库中。供别人在本地声明对你的依赖和使用。 六)其他 有的时候我们需要条用三方厂商的jar包,这些jar是在远程仓库下载不了的,那么这个如何放到仓库中呢 先在setting.xml中配置一个新的server <server> <id>nexus-3rd-party</id> <username>deployment</username> <password>deployment123</password> </server> 然后通过命令来上传 mvn deploy:deploy-file -DgroupId=com.csource -DartifactId=fastdfs-client-java -Dversion=1.24 -Dpackaging=jar -Dfile=F:\jars\abc.jar -Durl=http://localhost:8081/repository/3rd-party/ -DrepositoryId=nexus-3rd-party