2013-08-22 20 views
7

Khi tôi gọi mvn dependency:tree về dự án của tôi tôi nhận được những lời cảnh báo và báo lỗi sau:Maven tìm đường dẫn đến phụ thuộc với pom không hợp lệ

[WARNING] The POM for com.sun.xml.stream.buffer:streambuffer:jar:0.4 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details

[WARNING] The POM for org.jvnet.staxex:stax-ex:jar:1.0 is invalid, transitive dependencies (if any) will not be available, enable debug logging for more details

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.1:tree (default-cli) on project rdbms-service: Execution default-cli of goal org.apache.maven.plugins:maven-dependency-plugin:2.1:tree failed: For artifact {org.jvnet.staxex:stax-ex:null:jar}: The version cannot be empty. -> [Help 1]

Tuy nhiên vì cây xây dựng không, tôi không biết đó là sự phụ thuộc là kéo những phụ thuộc không hợp lệ. Có cách nào để tìm hiểu không?

Tôi đã thử loại trừ các lọ đó bằng mvn dependency:tree -Dexcludes=*stream.buffer,*staxex, nhưng điều đó không có sự khác biệt.

Trả lời

5

Hãy thử mvn org.apache.maven.plugins:maven-dependency-plugin:2.8:tree để buộc Maven để sử dụng một phiên bản mới hơn của maven-phụ thuộc-plugin

+0

Đã hoạt động không có vấn đề. Chúc mừng :) – MikeFHay

+2

năm 2015 và tôi có lỗi tương tự, cho cùng một cái lọ! - gọi rõ ràng là "mvn org.apache.maven.plugins: maven-dependency-plugin: 2.10: cây" hoạt động nhưng khi cùng một plugin là một phần của tệp pom.xml không thành công - [ERROR] Không thực thi được mục tiêu org.apache.maven .plugins: maven-dependency-plugin: 2.10: cây (cây) trên dự án dms-webservice-v1: Cây thực thi của mục tiêu org.apache.maven.plugins: maven-dependency-plugin: 2.10: tree failed: Đối với artifact {org .jvnet.staxex: stax-ex: null: jar}: Phiên bản không được để trống. -> [Help 1] –

0

org.jvnet.staxex:stax-ex:1.0 appears to miss element in the pom in remote repository, contains instead which was never included in the pom.xml schema AFAIK. Apparently some manually created pom (in a wrong way) that ended up in java.net and then central.

Cố gắng loại trừ phụ thuộc Stax-cũ và rõ ràng xác định một hình mới. Ví dụ:

 <!-- jaxws-rt with replaced broken stax-ex --> 
     <dependency> 
      <groupId>com.sun.xml.ws</groupId> 
      <artifactId>jaxws-rt</artifactId> 
      <version>2.1.7</version> 
      <exclusions> 
       <exclusion> 
        <groupId>org.jvnet.staxex</groupId> 
        <artifactId>stax-ex</artifactId> 
       </exclusion> 
      </exclusions> 
     </dependency> 
     <dependency> 
      <groupId>org.jvnet.staxex</groupId> 
      <artifactId>stax-ex</artifactId> 
      <version>1.2</version> 
     </dependency>