2012-04-17 22 views
12

Khi thực hiện mvn exec:java nó không thành công để phân tích một cách chính xác các đối số cấu hình, ném các lỗi sau:exec-maven-plugin exec: java thất bại: Không thể gán giá trị cấu hình để mảng kiểu java.lang.String

[ERROR] Failed to execute goal org.codehaus.mojo:exec-maven-plugin:1.2.1:java (default-cli) on project autotest-programmes: Unable to parse configuration of mojo org.codehaus.mojo:exec-maven-plugin:1.2.1:java: Cannot assign configuration values to array of type java.lang.String: [-classpath, Classpath {}, --glue, com.company.test.cucumber, --format, pretty, --format, html:C:\workspace\autotest\target] -> [Help 1]

Đây là cấu hình Plugin sử dụng (sử dụng Apache Maven 3.0.3):

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>exec-maven-plugin</artifactId> 
    <version>1.2.1</version> 
    <executions> 
     <execution> 
      <goals> 
       <goal>java</goal> 
      </goals> 
     </execution> 
    </executions> 
    <configuration> 
     <includeProjectDependencies>false</includeProjectDependencies> 
     <includePluginDependencies>true</includePluginDependencies> 
     <executableDependency> 
      <groupId>info.cukes</groupId> 
      <artifactId>cucumber-core</artifactId> 
     </executableDependency> 
     <mainClass>cucumber.cli.Main</mainClass> 
     <commandlineArgs>-Dfile.encoding=UTF-8</commandlineArgs> 
     <arguments> 
      <argument>-classpath</argument> 
      <classpath/> 
      <argument>--glue</argument> 
      <argument>com.company.test.cucumber</argument> 
      <argument>--format</argument> 
      <argument>pretty</argument> 
      <argument>--format</argument> 
      <argument>html:${project.basedir}\target</argument> 
     </arguments> 
    </configuration> 
    <dependencies> 
     <dependency> 
      <groupId>info.cukes</groupId> 
      <artifactId>cucumber-core</artifactId> 
      <version>1.0.2</version> 
     </dependency> 
    </dependencies> 
</plugin> 

Trả lời

10

tôi sẽ đề nghị để loại bỏ các mục rỗng từ cấu hình của bạn và thử lại lần nữa.

<argument>-classpath</argument> 
<classpath/> 

Nguyên nhân trong mục tiêu java đường dẫn lớp không được phép dựa trên documentation.

BTW: Không bao giờ sử dụng "\" trong maven của bạn. Sử dụng dấu gạch chéo về phía trước để thay thế.

+1

Tôi đã xóa các mục trống và thay đổi "\" thành "/". Nó chuyển từ lỗi trước đó, tuy nhiên nó bây giờ phàn nàn rằng nó không thể tìm thấy mainClass. '[ERROR] Không thể thực hiện mục tiêu org.codehaus.mojo: exec-maven-plugin: 1.2.1: java (default-cli) trên các chương trình tự động của dự án: Một ngoại lệ xảy ra khi thực hiện lớp Java. cucumber.cli.Main -> [Help 1] ' –

+0

Điều đó có nghĩa là mục nhập cấu hình mainClass của bạn không chính xác. – khmarbaise

+0

đến mục nào bạn đang giới thiệu? ? – Chris

1

Theo exec:java Docs here, bạn phải:

Di <arguments> phần

Và sử dụng <additionalClasspathElements> tờ khai để xác định một classpath.

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