通過Maven發布構建到NEXUS私服上
發布構建到私服 --- mvn deploy
POM中通過distributionManagement分發本地構建到NEXUS私服上
第一步,配置distributionManagement
<project> ... <distributionManagement> <!-- 配置快照版本發布的倉庫--> <snapshotRepository> <id>nexus-snapshots</id> <name>Nexus Snapshots Repository</name> <url>http://localhost:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> <!-- 配置release版本發布的倉庫--> <repository> <id>nexus-releases</id> <name>Nexus Releases Repository</name> <url>http://localhost:8081/nexus/content/repositories/releases/</url> </repository> </distributionManagement> ... </project>
第二步,在settings文件中,配置上傳構建時需要的賬號(必須通過有效賬號才能deploy)
注意: <id>屬性指代的就是POM中配置Repository的id,必須一一對應。
<settings> ... <servers> <!-- 配置上傳snapshot構建時使用的賬戶 --> <server> <id>nexus-snapshots</id> <username>root</username> <password>root</password> </server> <!-- 配置上傳release構建時使用的賬戶 --> <server> <id>nexus-releases</id> <username>root</username> <password>root</password> </server> ... </settings>
現在,就可以通過Maven的deploy命令,將本地的Maven項目上傳到私服上了,只要能夠訪問私服的,都能下載到這些構建。
補充:
為了上傳jar同時上傳源碼.使用mvn deploy 即可.同時要保證 pom.xml文件中有:
<project> <build> <plugins> <!-- 要將源碼放上去,需要加入這個插件 --> <plugin> <artifactId>maven-source-plugin</artifactId> <version>2.1</version> <configuration> <attach>true</attach> </configuration> <executions> <execution> <phase>compile</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
如單獨的打源碼包可執行 mvn source:jar
例如dubbo源碼 : mvn clean source:jar install -Dmaven.test.skip=true