Apache Maven là một công cụ xây dựng được sử dụng để quản lý các bản dựng dự án. Maven hiểu cấu trúc của một dự án và có thể tự động hóa nhiều quy trình, giúp giảm thời gian phát hành của bạn.
Maven cung cấp một quy trình thống nhất để tạo dự án bằng cách hỗ trợ các phương pháp hay nhất trong toàn bộ vòng đời phát triển phần mềm; không chỉ dễ sử dụng mà còn tạo điều kiện thuận lợi cho việc giao tiếp tuyệt vời giữa tất cả các thành viên trong nhóm của bạn hoặc thậm chí là các nhóm trong quá trình phát triển.
Ngoài ra, Maven có hỗ trợ có thể cắm được cho hầu hết mọi hệ thống kiểm soát phiên bản hoặc loại đóng gói hiện có, giúp các nhà phát triển dễ dàng hơn vì họ không phải học bất kỳ hệ thống mới nào. Với tư cách là một nhà phát triển, bạn sẽ có thể dành nhiều thời gian hơn cho những gì bạn muốn làm và ít thời gian hơn cho các cơ chế thực hiện chúng.
Bạn có thể sử dụng Maven để xây dựng và quản lý các dự án ở mọi quy mô và nó đặc biệt hữu ích trong các nhóm phát triển phần mềm lớn hơn, nơi các hướng dẫn nghiêm ngặt mà Maven cung cấp giúp tăng năng suất thông qua các quy ước lập trình và kiểm soát nhiều hơn đối với tính nhất quán của bản dựng.
Bố cục thư mục chuẩn của Maven cũng giúp bạn chỉ cần tìm hiểu hệ thống một lần rồi chuyển kiến thức đó sang nhiều dự án. Bằng cách tuân theo các quy ước chuẩn, bạn có thể dễ dàng định vị thông tin dự án như mã nguồn, tệp cấu hình, báo cáo ở vị trí có thể dự đoán được cho từng loại hiện vật.
Debian 11 hỗ trợ cả Java 11 và Java 17, nhưng một số plugin Apache Maven cũ có thể không tương thích với Java 17. Do đó, hướng dẫn này sẽ chỉ cho bạn cách cài đặt Java 11.
Trước khi cài đặt bất kỳ thứ gì, điều quan trọng là phải đảm bảo rằng không có xung đột nào do nhiều phiên bản Java gây ra. Trước tiên, hãy xác định phiên bản Java nào mà máy chủ của bạn đang chạy bằng lệnh sau
Nếu bạn nhận được đầu ra như bên dưới, thì bạn đã sẵn sàng.
Chạy lệnh bên dưới để cài đặt Java 11.
Sau khi Java được cài đặt, hãy kiểm tra phiên bản của nó bằng lệnh sau
Bạn sẽ nhận được đầu ra như bên dưới. Bạn có thể thấy phiên bản Java 11 đã được cài đặt.
Chạy lệnh bên dưới để tải Maven từ trang web chính thức.
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống và di chuyển các tệp đã giải nén bằng lệnh bên dưới.
Sau khi hoàn tất, bạn sẽ có các tệp mới bên dưới Thư mục /opt/maven, chứa tất cả các tệp thực thi và tập lệnh của Maven để chạy Maven.
Bạn có thể xem tập lệnh cài đặt đã được di chuyển đến đâu bằng lệnh bên dưới.
Như hiển thị trong đầu ra ở trên, bạn sẽ có một tệp có tên "bin" trong /opt/maven, chứa tất cả các tệp thực thi và tập lệnh của Maven để chạy Maven.
Để thực thi bất kỳ lệnh maven nào, bạn cần thêm thư mục /opt/maven/bin vào biến môi trường PATH của mình. Để thực hiện việc này trong bash shell, hãy chạy lệnh bên dưới để tạo một tệp mới và thiết lập các thuộc tính của tệp để có thể thực thi tệp dưới dạng một tập lệnh.
Sau khi tạo, hãy sao chép và dán mã sau vào tệp.
Lưu và đóng tệp khi bạn nhập xong nội dung bằng cách sử dụng tổ hợp phím Ctrl+O rồi xác nhận bằng tổ hợp phím Enter và CTRL+X.
Bây giờ để đảm bảo các đường dẫn đã cập nhật có hiệu lực, hãy chạy lệnh sau, lệnh này sẽ yêu cầu bash shell của bạn đọc và thêm các thay đổi bạn đã thực hiện trong tệp /etc/profile.d/maven.sh.
Bạn có thể xem Maven đã được cài đặt trên máy chủ của mình hay chưa bằng cách chạy lệnh mvn với tùy chọn -version.
Bạn sẽ nhận được đầu ra như bên dưới.
Bây giờ, bạn có thể xóa tệp apache-maven-3.8.2 mà bạn đã tải xuống trước đó để tiết kiệm dung lượng bằng lệnh bên dưới.
Bây giờ bạn có thể chạy bất kỳ lệnh Maven nào từ terminal. Ví dụ, nếu bạn muốn tạo một dự án maven mới từ một mẫu, bạn có thể thực hiện bằng cách nhập lệnh sau.
Lệnh này yêu cầu Maven tạo một thư mục với groupId, artifactId và tên gói mà tôi vừa cung cấp. Các giá trị này cũng sẽ được sử dụng làm số phiên bản của dự án.
Bạn sẽ nhận được kết quả như bên dưới, nghĩa là Maven đã tạo thành công một dự án mới trong thư mục java-project từ mẫu maven-archetype-quickstart.
Maven cung cấp một quy trình thống nhất để tạo dự án bằng cách hỗ trợ các phương pháp hay nhất trong toàn bộ vòng đời phát triển phần mềm; không chỉ dễ sử dụng mà còn tạo điều kiện thuận lợi cho việc giao tiếp tuyệt vời giữa tất cả các thành viên trong nhóm của bạn hoặc thậm chí là các nhóm trong quá trình phát triển.
Ngoài ra, Maven có hỗ trợ có thể cắm được cho hầu hết mọi hệ thống kiểm soát phiên bản hoặc loại đóng gói hiện có, giúp các nhà phát triển dễ dàng hơn vì họ không phải học bất kỳ hệ thống mới nào. Với tư cách là một nhà phát triển, bạn sẽ có thể dành nhiều thời gian hơn cho những gì bạn muốn làm và ít thời gian hơn cho các cơ chế thực hiện chúng.
Bạn có thể sử dụng Maven để xây dựng và quản lý các dự án ở mọi quy mô và nó đặc biệt hữu ích trong các nhóm phát triển phần mềm lớn hơn, nơi các hướng dẫn nghiêm ngặt mà Maven cung cấp giúp tăng năng suất thông qua các quy ước lập trình và kiểm soát nhiều hơn đối với tính nhất quán của bản dựng.
Bố cục thư mục chuẩn của Maven cũng giúp bạn chỉ cần tìm hiểu hệ thống một lần rồi chuyển kiến thức đó sang nhiều dự án. Bằng cách tuân theo các quy ước chuẩn, bạn có thể dễ dàng định vị thông tin dự án như mã nguồn, tệp cấu hình, báo cáo ở vị trí có thể dự đoán được cho từng loại hiện vật.
Điều kiện tiên quyết
Để cài đặt Apache Maven trên Linux, bạn cần có:- Máy chủ chạy Debian 11
- Quyền truy cập gốc vào máy chủ này
- Cập nhật Máy chủ
Mã:
sudo apt-get update && sudo apt-get -y upgrade
Cài đặt Java
Để cài đặt Apache Maven trên Linux, bạn phải cài đặt Java. Nếu không có java, bạn không thể cài đặt Maven. Bản thân Maven được viết bằng Java, vì vậy nó cần trình biên dịch Java có trên máy chủ.Debian 11 hỗ trợ cả Java 11 và Java 17, nhưng một số plugin Apache Maven cũ có thể không tương thích với Java 17. Do đó, hướng dẫn này sẽ chỉ cho bạn cách cài đặt Java 11.
Trước khi cài đặt bất kỳ thứ gì, điều quan trọng là phải đảm bảo rằng không có xung đột nào do nhiều phiên bản Java gây ra. Trước tiên, hãy xác định phiên bản Java nào mà máy chủ của bạn đang chạy bằng lệnh sau
Mã:
java -version
Chạy lệnh bên dưới để cài đặt Java 11.
Mã:
sudo apt install -y openjdk-11-jdk -y
Mã:
java -version
Cài đặt Apache Maven trên Debian 11
Bây giờ bạn đã cập nhật máy chủ và cài đặt Java 11, bạn sẽ cài đặt Apache Maven. Ở bước này, chúng ta sẽ tải xuống và cài đặt Maven.Chạy lệnh bên dưới để tải Maven từ trang web chính thức.
Mã:
curl -O https://archive.apache.org/dist/maven/maven-3/3.8.2/binaries/apache-maven-3.8.2-bin.tar.gz
Mã:
sudo tar -zxvf apache-maven-3.8.2-bin.tar.gz
Mã:
sudo mv apache-maven-3.8.2 /opt/maven
Bạn có thể xem tập lệnh cài đặt đã được di chuyển đến đâu bằng lệnh bên dưới.
Mã:
ls /opt/maven
Để thực thi bất kỳ lệnh maven nào, bạn cần thêm thư mục /opt/maven/bin vào biến môi trường PATH của mình. Để thực hiện việc này trong bash shell, hãy chạy lệnh bên dưới để tạo một tệp mới và thiết lập các thuộc tính của tệp để có thể thực thi tệp dưới dạng một tập lệnh.
Mã:
sudo nano /etc/profile.d/maven.sh
Mã:
export JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
export M2_HOME=/opt/maven
export PATH=${M2_HOME}/bin:${PATH}
Bây giờ để đảm bảo các đường dẫn đã cập nhật có hiệu lực, hãy chạy lệnh sau, lệnh này sẽ yêu cầu bash shell của bạn đọc và thêm các thay đổi bạn đã thực hiện trong tệp /etc/profile.d/maven.sh.
Mã:
source /etc/profile.d/maven.sh
Mã:
mvn -version
Bây giờ, bạn có thể xóa tệp apache-maven-3.8.2 mà bạn đã tải xuống trước đó để tiết kiệm dung lượng bằng lệnh bên dưới.
Mã:
sudo rm apache-maven-3.8.2-bin.tar.gz
Mã:
mvn archetype:generate-DgroupId={project-packaging} -DartifactId={project-name} -DarchetypeArtifactId={maven-template}-DinteractiveMode=fa
Mã:
mvn archetype:generate -DgroupId=com.mkyong.hashing -DartifactId=java-project -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
Bạn sẽ nhận được kết quả như bên dưới, nghĩa là Maven đã tạo thành công một dự án mới trong thư mục java-project từ mẫu maven-archetype-quickstart.