Ví dụ mình có một thư viện tên là pdfreactor.jar

Có 2 cách phổ biến để có thể include thư viện đó vào, đó là

1. Cài đặt thư viện đó vào repository trên máy bạn

Cách này có hạn chế là mỗi khi chạy project trên một máy mới thì bạn lại phải cài đặt lại thư viện đó vào.

Cách làm như sau:

Đầu tiên bạn cần cài đặt mvn để có thể biên dịch thư viện ngoài. Sau khi cài đặt mvn thì bạn chạy câu lệnh:

- Bước 1: Cài đặt thư viện vào repository trên máy bạn:

mvn install:install-file -Dfile=path/to/pdfreactor.jar -DgroupId=pdfreactor -DartifactId=pdfreactor -Dversion=1.0 -Dpackaging=jar

- Bước 2: Sửa file pom.xml để nhận thư viện vừa cài đặt vào:

<dependencies> 
... 
   <dependency> 
       <groupId>pdfreactor</groupId> 
       <artifactId>pdfreactor</artifactId> 
       <version>1.0</version> 
   </dependency> 
... 
</dependencies>

 

  Lưu ý: groupdId, artifactIdversion phía trên trùng với các tên mình đặt tương ứng ở Bước 1

 

2. Tạo repository ngay trong project

Cách này giải quyết được hạn chế ở cách 1

- Bước 1: Bạn đặt thư viện ngoài vào thư mục có định dạng sau:

     /groupId/artifactId/version/artifactId-verion.jar

Ví dụ mình đặt thư viện pdfreactor.jar vào thư mục "libs/pdfreactor/pdfreactor/1.0/pdfreactor-1.0.jar" thì groupdId = pdfreactor, artifactId = pdfreactor, version = 1.0, pdfreactor.jar giờ đổi tên thành pdfreactor-1.0.jar

- Bước 2: Bạn sửa nội dung file pom.xml thành:

<repository>
   <id>in-project</id>
   <name>In Project Repo</name>
   <url>file:///${project.basedir}/libs</url>
</repository>

<dependencies>
   ...
   <dependency>
       <groupId>pdfreactor</groupId>
       <artifactId>pdfreactor</artifactId>
       <version>1.0</version>
   </dependency>
   ...
<dependencies>

 

Lưu ý: groupdId, artifactIdversion phía trên trùng với các tên mình đặt tương ứng ở Bước 1

 

Nguồn tham khảo:

http://stackoverflow.com/questions/5692256/maven-best-way-of-linking-custom-external-jar-to-my-project

http://charlie.cu.cc/2012/06/how-add-external-libraries-maven/