簡體   English   中英

解決錯誤java.lang.NoSuchMethodError:org.codehaus.groovy.ast.ModuleNode.getStarImports()Ljava / util / List;

[英]Solve Error 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;

我嘗試了各種版本的groovy jar,如groovy 1.8.4,groovy 1.8.6等。但我無法擺脫這個錯誤。

當我在類路徑中同時擁有2個不同版本的Groovy時,這發生在我身上。 檢查您的類路徑,特別是如果使用混淆它的東西,如Eclipse或Maven。

在我的具體情況下,我試圖使用Groovy 1.8.6但是Maven依賴項在1.6.5中拖動導致錯誤。 它在命令行上運行單元測試很好,但不能在Eclipse中運行。

要使用Groovy 2.x進行編譯,請嘗試將其添加到gmaven插件元素:

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

例如:

<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>

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

似乎工作。

我剛剛通過刷新IntelliJ中的所有Gradle項目並再次運行來解決這個問題。

問題肯定是多個groovy版本。 我正在使用maven項目和Eclipse IDE來解決這個問題。 就我而言, pom.xml有以下幾點 -

        <dependencies>
            <dependency>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>groovy-maven-plugin</artifactId>
                <version>2.0</version>
            </dependency>
        </dependencies>

但是在Eclipse Under Window - > preference - > groovy version是2.5.0。 我把它降級到2.3.11並且有效。 只需單擊switch即可在Eclipse中使用較低版本的Groovy。

在此輸入圖像描述

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM