Eclipse无法解析Groovy Grape导入

7

groovy eclipse插件版本:1.7.5.xx-20101020-1000-e36-release。

import com.jidesoft.swing.JideSplitButton

@Grab(group='com.jidesoft', module='jide-oss', version='[2.2.1,2.3.0)')
public class TestClassAnnotation {
    public static String testMethod () {
        return JideSplitButton.class.name
    }
}

new TestClassAnnotation().testMethod()

第一行错误:Groovy: 无法解析 com.jidesoft.swing.JideSplitButton 类

它可以作为 Groovy Shell 运行,但是错误警告很烦人。

3个回答

0
当我在编辑器中编译这段代码时,我得到的错误与在命令行中编译或运行时相同。
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
General error during conversion: Error grabbing Grapes -- [unresolved dependency: com.jidesoft#jide-oss;[2.2.1,2.3.0): not found]

(and then a very long stack trace)

你看到的是这个吗?


不,它可以编译并且运行我所需要的内容。但是IDE在第一行报错:Groovy:unable to resolve class com.jidesoft.swing.JideSplitButton。 - atian25
我的IDE是最新版本的STS,然后是Groovy插件。 - atian25
很遗憾,我无法重现您所看到的行为。我建议在问题跟踪器上提出错误报告:http://jira.codehaus.org/browse/GRECLIPSE - Andrew Eisenberg

0
尝试将@Grab放置在导入语句的正上方。就像这样:
 @Grab(group='com.jidesoft', module='jide-oss',version='[2.2.1,2.3.0]') 
 import com.jidesoft.swing.JideSplitButton

... your code continues here

0

我对这个问题来得有点晚,但我想知道是否应该将
@Grab(group='com.jidesoft', module='jide-oss', version='[2.2.1,2.3.0)')
改为
@Grab(group='com.jidesoft', module='jide-oss', version='[2.2.1,2.3.0]')

在我看来,这似乎是一个语法错误,Groovy期望传递一个列表。


1
这不就是一个带引号的版本字符串吗,其中“)”通常排除了上限范围吗? - Volker Stolz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接