2015-04-22 62 views
2

我正在尝试将Groovy用于Android项目,而我的第一项任务是获得全局扩展。Android中的Groovy扩展模块?

智能感知作品和汇编的东西很好,但我得到一个运行时异常,当它遇到我的方法

groovy.lang.MissingMethodException:法无签名

我有扩展类列在扩展文件中。

需要做什么来确保扩展在运行时被注册和使用?

编辑:严重的是,无论谁投票否决 - 这是什么文件?这并不像我没有花费数小时来试图解决这个问题。

+0

首先查看运行时异常中的信息。另请参阅有关在Android上运行Groovy的文档,例如要包含在构建的APK中的jar文件。 – Jerry101

+0

运行时异常是使用groovy语言方法查找的。 '使用'块可以正常工作,但我想要一个“全局使用块”。所有这些文件都非常非常薄。 – xtravar

+0

https://www.google.com/search?q=groovy%20on%20android找到大量文档,其中包括Groovy 2.4发布说明http://docs.codehaus.org/display/GROOVY/Groovy+2.4+release+笔记,Android支持groovyc参考http://docs.groovy-lang.org/docs/next/html/documentation/tools-groovyc.html#section-android和gradle插件https://github.com/groovy/groovy-android-gradle-plugin。他们有很大的差距吗? – Jerry101

回答

-1

这个项目似乎已经成功做到了: SwissKnife on Github

它针对的是Android的库构建的gradle使用。我会尝试使用这些gradle构建脚本作为模板。

的键注册到Groovy的运行时的延伸是在库

org.codehaus.groovy.runtime.ExtensionModule

温特META-INF /服务的存在。

在SwissKnife子项目中,它位于src/main/resources目录中。这遵循Gradle Groovy/Android插件使用的标准惯例。

+0

“META-INF /图书馆服务” - 图书馆在哪里?你自己试过这个吗? –