我想简化执行调用Oracle数据库的Groovy脚本的操作。如何将ojdbc jar添加到默认的类路径中,以便我可以运行:
groovy RunScript.groovy
而不是:
groovy -cp ojdbc5.jar RunScript.groovy
答案 0 :(得分:12)
总结来自 Groovy Recipes ,作者:Scott Davis,在./groovy/lib目录中自动包含JAR :
.groovy/lib
取消注释$ {GROOVY_HOME} /conf/groovy-starter.conf中的以下行
load !{user.home}/.groovy/lib/*.jar
将您要包含的jar复制到.groovy/lib
看来,对于Groovy 1.5或更高版本,默认情况下你会得到这个(不需要编辑conf),只需将jar放在/ lib目录中。
答案 1 :(得分:5)
有几种方法可以做到这一点。您可以将jar添加到系统的CLASSPATH变量中。您可以在主目录中创建一个名为.groovy / lib的目录,并将jar放在那里。它将在运行时自动添加到您的类路径中。或者,您可以在代码中执行此操作:
this.class.classLoader.rootLoader.addURL(new URL("file:///path to file"))
答案 2 :(得分:0)
groovy
只是用于设置Java类路径的Groovy JAR的包装脚本。您可以修改该脚本以添加您自己的JAR的路径,我猜想。
答案 3 :(得分:0)
您可以将以下shebang添加到Groovy脚本的第一行:
var quantity = $(this).closest('td').next().find('input').val();
然后,标记脚本可执行文件:
#!/usr/bin/env groovy -cp ojdbc5.jar
现在,单独运行脚本将自动设置类路径。
chmod u+x RunScript.groovy
答案 4 :(得分:0)
一种方法是在代码中使用@Grab:
@GrabConfig(systemClassLoader=true)
@Grab('com.oracle:ojdbc6:12.1.0.2.0')
Class.forName("oracle.jdbc.OracleDriver").newInstance()