首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将实用工具导入Groovy脚本

将实用工具导入Groovy脚本
EN

Stack Overflow用户
提问于 2014-10-21 04:07:29
回答 1查看 1.2K关注 0票数 2

假设我有一个包含两个Groovy文件的文件夹:

代码语言:javascript
复制
Main.groovy
Utils.groovy

我想在Main.groovy中使用Utils.groovy文件中的一些方法,这样以后就可以在其他Groovy脚本中重用它们。所以我在Main.groovy中尝试了一下

代码语言:javascript
复制
import Utils

当当前工作文件夹是脚本所在的文件夹时,这似乎是有效的。但是,如果我cd-ed到其他地方,这不起作用,并显示以下错误消息:

代码语言:javascript
复制
unable to resolve class Utils

有没有办法导入相对于脚本文件夹的文件,而不是当前的工作文件夹?我知道我可以提供-cp或者做其他事情,比如使用真正的构建工具,但我的想法是能够运行这些工具。

EN

回答 1

Stack Overflow用户

发布于 2014-10-21 04:52:05

如果这两个文件都在同一个目录中,则不必导入任何内容。看一下这个例子。我在/tmp目录中创建了两个文件: Utils.groovy和Main.groovy。在Utils.groovy中,您可以找到:

代码语言:javascript
复制
class Utils {
   def foo() {
      return 2
   }
}

在Main.groovy中,您可以找到:

代码语言:javascript
复制
Utils utils = new Utils()
println utils.foo()

我所要做的就是:先执行groovyc Main.groovy,然后执行groovy Main。输出为:

代码语言:javascript
复制
wololock@localhost : /tmp
[1] % groovy Main 
2

然后,要从您当前所在的任何目录运行它,请运行:

代码语言:javascript
复制
wololock@localhost : /usr
[1] % groovy -cp /tmp /tmp/Main
2
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26473985

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档