2012-02-24 29 views
6

Tôi có một thiết lập dự án như thế này:Làm thế nào để thiết lập phụ thuộc Maven giữa các thư mục thử nghiệm trong hai dự án?

parent 
    |_____project-a 
    |_____project-b 

Tôi muốn lớp trong kiểm tra thư mục của dự án b để giải quyết các lớp trong thư mục thử nghiệm của dự án a.

Thực ra, tôi muốn truy cập cả hai lớp từ thư mục chính và nội dung từ thư mục kiểm tra.

Điều này có khả thi không?

Cảm ơn

+1

http://jira.codehaus.org/browse/ MJAR-138 – catalyst

Trả lời

9

Bạn có thể xây dựng dự án A với mục đích thử nghiệm jar

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-jar-plugin</artifactId> 
      <executions> 
       <execution> 
        <phase>package</phase> 
        <goals> 
         <goal>test-jar</goal> 
        </goals> 
       </execution> 
      </executions>    
     </plugin>  

Sau đó, bao gồm nó với loại test-jar trong dự án B:

<dependency> 
     <groupId>com.example</groupId> 
     <artifactId>project-a</artifactId> 
     <type>test-jar</type> 
     <version>1.0-SNAPSHOT</version> 
     <scope>test</scope> 
    </dependency> 
5

Vì nội dung của thư mục thử nghiệm không được đưa vào mục tiêu cho dự án nên không thể sử dụng bên ngoài. Cách tốt nhất tôi nghĩ là di chuyển các lớp phổ biến để dự án như 'project-testcommons' và sử dụng nó trong project-a và project-b với phạm vi 'test'.

+0

Đối với các dự án lớn hơn, điều này có ý nghĩa hơn giải pháp 'test-jar' mà tôi đã cung cấp - quản lý phụ thuộc sẽ được xử lý chính xác – artbristol

Các vấn đề liên quan