- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在开发一个在 Groovy 脚本中加载的 Java 项目。一切都按预期工作,除了引用其他 groovy 脚本(在本例中为实用程序类)的 groovy 脚本。每当执行包含所述实用程序类的脚本时,插件加载器都会抛出异常“groovy.lang.MissingPropertyException:没有这样的属性:Util。
在我怀疑 Java 代码有问题之前,我想首先了解 Groovy 如何“查找”其他类。如果我在 eclipse 中运行这个项目,并且包含所有这些 groovy 脚本的整个项目目录都在类路径中,那么所有 groovy 脚本是否都应该能够“找到”彼此?
或者还有其他想法吗?
最佳答案
Groovy 在脚本和类之间有区别。如果 Groovy 文件包含类定义之外的一些代码,则它被视为脚本,并被编译为位于默认包中的类(无论 package
声明中设置了什么)。
我不知道你如何调用Groovy脚本,但是如果你使用GroovyShell
类,然后 GroovyShell
有一个带有 ClassLoader
类型参数的构造函数,您可以将当前的类加载器传递给该类加载器或包含其他编译的 Groovy 脚本的自定义类加载器。或者如果您使用 GroovyScriptEngine
您可以传递对脚本所在目录的引用,引擎将为您编译它们并使它们可用于该目录中的其他脚本。
有关将 Groovy 嵌入 Java 的更多信息,请访问:http://groovy.codehaus.org/Embedding+Groovy .
但总的来说,我需要更多地了解您的设置(文件夹结构、构建工具、您在构建过程中编译groovy代码、如何从java运行groovy代码、如何从groovy调用groovy脚本、如何组织类路径等),以便为您提供一些更准确的建议。
关于java - Java中嵌入groovy,groovy.lang.MissingPropertyException : No such property:,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9165267/
如果一个对象没有属性并且我正在访问该属性,我们会得到一个 MissingPropertyException .我可以做一些类似于安全 null ( ?. ) 的事情来防止丢失属性,这样它就不会抛出异常
我遇到一个奇怪的错误,使我整个早晨都挂断了电话。我有一个带有Person类的Grails应用程序,如下所示: class Person { String id Date l
我对 Groovy 完全陌生,只是在运行这个程序时遇到了一些麻烦。我想要做的就是将一个列表的所有元素添加到另一个列表中,但我什至无法在方法中访问我想要的变量。 我在这里四处寻找答案,但对于我对 Gro
如果一个对象没有属性,而我正在访问该属性,我们会得到一个MissingPropertyException。我可以做一些类似于安全 null (?.) 的事情来防止丢失属性,这样它就不会抛出异常吗? 最
我有一个域名类,一直在正常工作。但是现在我添加了Long属性,所有操作都从那里开始。 这是事故域类定义: class Accident { String fullDescription
在groovy文件中,我导入了jars groovy.util.logging.Log4j和 org.apache.log4j.Level以使用@Log4j,并将日志级别设置为:构造函数中的 log.
我一直在尝试在groovy上使用动态脚手架来查看Tasks列表。我的网域类别如下 package projecttracker import java.util.Date; class Task {
如何避免在 Map 中的模板中缺少参数时发生 MissingPropertyException 并将未找到的值替换为 null? import groovy.text.StreamingTemplat
我正在做一个 groovy 教程,我使用了“Programming Groovy”一书中的代码。我使用书中的以下代码来了解 Groovy 中的事件处理程序: +++++++++++++++++++++
我正在使用Groovy / Grails工具套件版本:3.6.4.RELEASE与Grails2.4.4和JRE1.8。 在一个非常简单的脚手架项目中,我有一个名为Book的域类,并试图创建一个复合键
当我在 GroovyConsole 中执行以下脚本时,它给了我一个 MissingPropertyException 但我不明白为什么: def a = 'A' def b() { print
我有一个简单的类,它根据简单的规则构建 RequestMessage。 如果在数据库中找到MessageMetadata,则会使用该元数据构建消息。 否则,消息将使用提供元数据的服务构建。 这是该类以
我一直在使用 spock 对我的 java 项目进行单元测试,但遇到了问题。我有一个实用方法可以从 http 请求中获取参数,或者如果 http 请求为空并尝试用 spock 测试它,则为空字符串。我
我在 groovy 中编写了以下测试(同时使用 spock 框架): def "#checkPassword check if passwd match"() { given: def
我正在尝试在 Jenkins 中编写管道脚本,因为我只想存储来自 Docker Repo 的图像名称,但在 Unix cmd 中,代码正在运行,但在管道脚本中,我收到如下错误:groovy.lang
我正在下面的 Controller 上进行集成测试,这是一个通用项目,用于在Web probject上为FAQ创建类别。并且以下测试返回“groovy.lang.MissingPropertyExce
我正在尝试调试Grails应用程序。不幸的是,我没有上述语言的经验。 当我执行 grails generate-all org.example.Book 时,我得到了一个模糊的错误: Generati
我的印象是闭包作为被调用的实际类(而不是实现父类(super class))运行,因此在某些变量不可见时中断(例如父类(super class)中的私有(private)变量)。 例如 package
我正在开发一个在 Groovy 脚本中加载的 Java 项目。一切都按预期工作,除了引用其他 groovy 脚本(在本例中为实用程序类)的 groovy 脚本。每当执行包含所述实用程序类的脚本时,插件
我已经创建了多分支管道(声明式)并将 jenkinsfile 放在 bitbucket 存储库中。配置为触发构建管道的 Hook 。当开发人员提交代码管道时,它会抛出以下错误。 [Bitbucket]
我是一名优秀的程序员,十分优秀!