2012-02-10 22 views
5

Tôi đang gặp phải ngoại lệ này.Giải quyết Lỗi java.lang.NoSuchMethodError: org.codehaus.groovy.ast.ModuleNode.getStarImports() Ljava/util/List;

Exception :java.lang.NoSuchMethodError: org.codehaus.groovy.ast.ModuleNode.getStarImports()Ljava/util/List; 

Tôi đã thử các phiên bản khác nhau của các loại nồi hấp như groovy 1.8.4, groovy 1.8.6 vv Nhưng tôi không thể loại bỏ lỗi này.

+0

Bạn đã kiểm tra 1.8.2 https://github.com/krsmes/GroovyBukkit/issues/1 – kosa

+0

Bạn đang làm gì gây ra ngoại lệ? –

+0

Dán một đoạn mã nguồn gây ra sự cố này. –

Trả lời

12

Điều này xảy ra với tôi khi tôi có 2 phiên bản khác nhau của Groovy trong classpath cùng một lúc. Kiểm tra classpath của bạn đặc biệt là nếu sử dụng một cái gì đó obfuscates nó như Eclipse hoặc Maven.

Trong trường hợp cụ thể của tôi, tôi đã cố gắng sử dụng Groovy 1.8.6 nhưng một phụ thuộc Maven đã được kéo trong 1.6.5 gây ra lỗi. Nó hoạt động tốt các thử nghiệm đơn vị chạy trên dòng lệnh, nhưng không phải từ bên trong Eclipse.

+1

trong trường hợp của tôi nó là một cuộc xung đột giữa Maven 'gmaven-plugin' 1.5 và 'groovy-all' 2.0.1. Tôi đã hạ cấp 'groovy-all' xuống 1.7.5 và giải quyết vấn đề. – yegor256

+0

Cảm ơn bạn, điều này đã giúp tôi. Khi tôi gỡ bỏ một trong các tệp jar, mọi thứ đều ổn. –

5

Để biên dịch với 2.x Groovy, hãy thử thêm này để các yếu tố Plugin gmaven:

<configuration> 
    <providerSelection>2.0</providerSelection> 
    <source>2.0</source> 
</configuration> 

Ví dụ:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.codehaus.gmaven</groupId> 
      <artifactId>gmaven-plugin</artifactId> 
      <executions> 
       <execution> 
        <goals> 
         <goal>generateStubs</goal> 
         <goal>compile</goal> 
         <goal>generateTestStubs</goal> 
         <goal>testCompile</goal> 
        </goals> 
       </execution> 
      </executions> 
      <configuration> 
       <providerSelection>2.0</providerSelection> 
       <source>2.0</source> 
      </configuration> 
     </plugin> 
    </plugins> 
</build> 

với

<dependencies> 
    <dependency> 
     <groupId>org.codehaus.groovy</groupId> 
     <artifactId>groovy-all</artifactId> 
     <version>2.1.9</version> 
    </dependency> 
</dependencies> 

dường như làm việc.

0

Tôi vừa giải quyết điều này bằng cách làm mới tất cả các dự án Gradle trong IntelliJ và chạy lại.

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