2013-02-22 38 views
5

Tôi có dự án Maven tùy thuộc vào vài dự án Maven khác. Tôi đang sử dụng Spring 3.1.1 trong dự án của tôi và các dự án phụ thuộc có 3.0.6. Tôi đang cố gắng loại trừ Spring 3.0.6 khi triển khai vì không thể thực hiện cả hai. Tôi đã thêm một loại trừ rõ ràng trong POM của tôi cho rằng, nhưng đối với một số lý do tôi vẫn thấy phiên bản cũ của lọ lõi lò xo trong thư mục WEB-INF/lib khi tôi khởi động máy chủ Tomcat. Ai đó có thể chỉ cho tôi nơi tôi đang đi sai. Đây là của tôi pom.xml:Loại trừ phụ thuộc Maven dường như không hoạt động

<project> 
    .... 
<properties> 
    <org.springframework-version>3.1.1.RELEASE</org.springframework-version> 
</properties> 
<dependency> 
     <groupId>com.test.abc</groupId> 
     <artifactId>abc</artifactId> 
     <version>1.0</version> 
     <type>war</type> 
     <exclusions> 
      <exclusion> 
       <groupId>org.springframework</groupId> 
       <artifactId>spring-core</artifactId> 
      </exclusion> 
     </exclusions>    
     </dependency> 
      <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>${org.springframework-version}</version> 
     <exclusions> 
      <!-- Exclude Commons Logging in favor of SLF4j --> 
      <exclusion> 
       <groupId>commons-logging</groupId> 
       <artifactId>commons-logging</artifactId> 
      </exclusion> 
     </exclusions> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-webmvc</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-oxm</artifactId> 
     <version>3.0.4.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>${org.springframework-version}</version> 
    </dependency> 

    <dependency> 
     <groupId>org.springframework.ws</groupId> 
     <artifactId>spring-xml</artifactId> 
     <version>1.0-m2</version> 
    </dependency> 
     ....  
     </project> 
+0

Bạn có chắc chắn đã loại trừ nó khỏi tất cả các phụ thuộc phụ thuộc vào nó? – Lucas

+0

vâng tôi đã làm. Tôi đang điên với điều này rồi. – sri

+0

đầu ra của bạn là gì nếu bạn chạy 'mvn dependency: tree'? – Lucas

Trả lời

4

Loại phụ thuộc của bạn đang chiến tranh nên không có giải pháp nào xảy ra ở đây. Maven phủ lên nội dung chiến tranh trong dự án của bạn.

Khi chiến tranh được xuất bản vào kho lưu trữ, phần tạo tác sẽ chứa thư viện phụ thuộc trong thư mục lib WEB-INF. Trong lớp phủ, nó không xử lý thư mục lib nào khác với bất kỳ tài nguyên tĩnh nào trừ khi bạn yêu cầu loại trừ theo cách khác.Check 'overlay' property here

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