Đưa thư viện bạn cần vào Local Maven Repository

Nếu ai trong số các bạn đã làm việc với Maven thì chẳng lạ lẫm gì khái niệm Local Maven Repository. Đối với các bạn chưa biết thì mình xin nói đại khái như sau:

Local Maven Repository là một thư mục trong máy tính của các bạn. Nó được tạo ra khi bạn sử dụng Maven trong các dự án của mình, nơi mà sẽ chứa tất cả các thư viện bạn cần để build các dự án. Mặc định thư mục này sẽ nằm trong thư mục của người dùng với tên là “.m2/repository”, như bên dưới:

dua-thu-vien-ban-can-vao-local-maven-repository-1

Bên trong nó chứa tất cả thư viện cần thiết cho bạn:

dua-thu-vien-ban-can-vao-local-maven-repository-2

Bây giờ mình xin trở lại chủ đề chính của bài viết này. Tại sao bạn cần phải đưa một thư viện nào đó vào Local Maven Repository?

Lý do đơn giản là khi làm việc với Maven đôi khi thư viện hoặc phiên bản của thư viện bạn cần, Maven không thể tìm thấy nó ở một nơi nào đó trên internet (hay có thể gọi là Remote Maven Repository). Hoặc là thư viện bạn viết ra cần đưa vào Local Maven Repository để những dự án Maven khác có thể dùng được.

Vậy giải pháp ở đây là gì?

Rất may, Maven đã thấy được nhu cầu đó và nó đã hỗ trợ chúng ta để có thể dễ dàng đưa bất kỳ thư viện nào bạn muốn vào Local Maven Repository bằng một câu lệnh đơn giản.

Hãy xem cú pháp của nó như thế nào nhé các bạn!

Trong đó:

  • Cho tham số -Dfile bạn phải cung cấp đường dẫn hiện tại của thư viện bạn cần đưa vào Local Maven Repository.
  • Các tham số -DgroupId, -DartifactId-Dversion là những tham số định nghĩa cho thư viện của chúng ta trong Local Maven Repository.
  • Còn cho các tham số -Djavadoc-Dsources thì là optional, các bạn cần cung cấp đường dẫn đến tập tin Javadoc và tập tin sources của thư viện để Maven install vào Local Maven Repository cùng với thư viện luôn!

OK, mình sẽ làm một ví dụ để các bạn nắm nhé.

Ở đây mình cần đưa thư viện Simple Captcha phiên bản 1.2.1 vào Local Maven Repository, mình sẽ chạy dòng lên như sau:

Kết quả:

dua-thu-vien-ban-can-vao-local-maven-repository-3

5/5 - (1 bình chọn)

Add Comment