如何在不使用-cp开关的情况下在Groovy中自动加载数据库jar?

Jos*_*hua 13 java scripting groovy classpath

我想简化执行调用Oracle数据库的Groovy脚本的过程.如何将ojdbc jar添加到默认的类路径中,以便我可以运行:

groovy RunScript.groovy
Run Code Online (Sandbox Code Playgroud)

代替:

groovy -cp ojdbc5.jar RunScript.groovy
Run Code Online (Sandbox Code Playgroud)

Ken*_*tle 12

由Scott Davis 在Groovy Recipes中总结,在./groovy/lib目录中自动包含JAR:

  1. .groovy/lib在您的登录目录中创建
  2. 取消注释$ {GROOVY_HOME} /conf/groovy-starter.conf中的以下行

    load !{user.home}/.groovy/lib/*.jar

  3. 复制您想要包含的罐子 .groovy/lib

看来,对于Groovy 1.5或更高版本,默认情况下你会得到这个(不需要编辑conf),只需将jar放在/ lib目录中即可.


Joe*_*son 5

有几种方法可以做到这一点.您可以将jar添加到系统的CLASSPATH变量中.您可以在主目录中创建一个名为.groovy/lib的目录,并将jar放在那里.它将在运行时自动添加到您的类路径中.或者,您可以在代码中执行此操作:

this.class.classLoader.rootLoader.addURL(new URL("file:///path to file"))
Run Code Online (Sandbox Code Playgroud)