2016-07-23 40 views
7

Podczas rozwijania maven wtyczki błąd kompilacji drukuje:Maven-plugin-plugin: deskryptor cel nie na końcu pliku

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-plugin-plugin:3.3:descriptor (default-descriptor) on project default-method-demo: Execution default-descriptor of goal org.apache.maven.plugins:maven-plugin-plugin:3.3:descriptor failed: syntax error @[8,1] in file:/full/path/to/project/default-method/src/main/java/org/example/Iface.java -> [Help 1] 

mimo że plik Iface.java jest compilable.

Iface.java:

package org.example; 

public interface Iface { 
    default String getString() { 
     return "string"; 
    } 
} 

z pom.xml

<packaging>maven-plugin</packaging> 

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <version>3.3</version> 
      <configuration> 
       <source>1.8</source> 
       <target>1.8</target> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

<dependencies> 
    <dependency> 
     <groupId>org.apache.maven</groupId> 
     <artifactId>maven-plugin-api</artifactId> 
     <version>3.0.5</version> 
    </dependency> 
    <dependency> 
     <groupId>org.apache.maven.plugin-tools</groupId> 
     <artifactId>maven-plugin-annotations</artifactId> 
     <version>3.4</version> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 

Co powoduje ten problem? Jak to naprawić?

Odpowiedz

13

Problem polegający na tym, że generowanie deskryptora wtyczki miało trudności z analizowaniem interfejsów Java 8 za pomocą domyślnych metod.

To może być ustalona przez wyraźnie stwierdzając nowszą wersję wtyczki w pom.xml:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-plugin-plugin</artifactId> 
      <version>3.4</version> 
     </plugin> 
     <!-- other plugins --> 
    </plugins> 
</build> 

Albo po prostu unikanie metod domyślnych przesuwając swoje ciało do klas wykonawczych.

Błąd powiązany: MPLUGIN-272