微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

基础知识:以groovy导入类

如何解决基础知识:以groovy导入类

我为此大声疾呼,但似乎无法弄清楚自己在做错什么。

我有一个文件夹“ myproject”和两个文件-“ MyScript.groovy”和“ MyClass.groovy”。

MyClass.groovy

package myproject

public class MyClass {
    void printHello() {
        println("hello")
    }
}

MyScript.groovy

package myproject
import myproject.MyClass

def myObject = new MyClass()
myObject.printHello()

当我尝试运行MyScript.groovy时,出现以下错误

[Running] groovy "c:\Users\myUser\...\myproject\MyScript.groovy"
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup Failed:
C:\Users\myUser\...\myproject\MyScript.groovy: 2: unable to resolve class myproject.MyClass
 @ line 2,column 1.
   import myproject.MyClass
   ^

1 error

我认为这无关紧要,但是我正在通过Visual Studio中的代码运行器扩展来运行它。 任何帮助,将不胜感激。 :)

解决方法

无需进一步配置,Groovy假定当前工作正常 是类路径(的一部分)的目录。所以你的设置基本上是 正确;假设是这样的:

# find .
.
./myproject
./myproject/MyClass.groovy
./myproject/MyScript.groovy

因此,在包结构和目录结构匹配的地方运行此命令, 它有效:

# groovy myproject/MyScript.groovy 
hello

因此,这里最可能的问题是您的IDE尚未设置 cwd正确,或者您已将.../myproject配置为项目 根。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。