Nexus repository ngày càng phổ biến trong hệ công cụ dùng cho lưu trữ artifacts. Bài viết hướng dẫn cài đặt nexus và deploy maven nexus để lưu trữ, quản lý các package phát sinh trong quá trình build ứng dụng.
Chuẩn bị
Bạn cần setup trước một Nexus server, ở bài này mình sẽ install ở local machine:
- Download Nexus Repository OSS
- Giải nén file download
- Start Nexus
If linux: bin/nexus start
If window: nexus.exe run - Mở brower với đường dẫn http://localhost:8081/
- Đăng nhập username
admin
and password default, sau đó mình sẽ tiếp tục change password thànhadmin
KHởi tạo Maven project cho mục đích demo:
$ mvn archetype:generate
-DgroupId=com.mycompany
-DartifactId=demo
-DarchetypeArtifactId=maven-archetype-quickstart
-DinteractiveMode=false
Khai báo Maven Deploy Plugin
Việc khai báo Maven deploy plugin sẽ nằm ở file POM. pom.xml
file sẽ nằm ở folder root của project mà bạn đã khởi tạo ở step 1 trên.
Xác định version Maven deploy plugin:
<project> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> <version>2.8.2</version> </plugin> </plugins> </pluginManagement> </build> </project>
Add thêm plugin dưới đây cho mục đích deployment lên Nexus:
<project> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-deploy-plugin</artifactId> </plugin> </plugins> </build> </project>
Cấu hình Nexus
Xác định các thuộc tính, user/pass của Nexus lên file pom.xml
:
<project> <distributionManagement> <snapshotRepository> <id>nexus-snapshots</id> <url>http://localhost:8081/repository/demo_nexus</url> </snapshotRepository> </distributionManagement> </project>
Thêm user/pass vào Maven global settings (~/.m2/settings.xml
) hoặc (C/user/your_computer/.m2/settings.xml
):
<!-- file: /Users/hieuta/.m2/settings.xml --> <settings> <servers> <server> <id>nexus-snapshots</id> <username>admin</username> <password>admin</password> </server> </servers> </settings>
IMPORTANT: Bạn không nên đặt plan text password vào settings.xml. Tuy nhiên do demo nên mình để vậy thì không sao, để tìm hiểu thêm bạn có thể đọc link này Password Encryption .
Build và deploy maven nexus
Ở đây mình sẽ dùng command line như sau:
mvn clean deploy --settings C:Usershieu.taDownloadsnexus-3.42.0-01projectdemosettings.xml
Trong đó --settings là để trỏ vào file setting mình đã guide ở trên, hoặc nếu bạn để settings.xml ở Global thì không cần --settings.
5. Kiểm tra kết quả
Truy cập http://localhost:8081/#browse/browse:demo_nexus để xem kết quả
Chúc các bạn thành công!!!!