如何向groovyConole/groovysh的类路径添加多个jar?

如何向groovyConole/groovysh的类路径添加多个jar?,groovy,jar,groovyshell,groovy-console,Groovy,Jar,Groovyshell,Groovy Console,我不得不问这个问题,这感觉很可笑,但我似乎无法向groovyConsole和groovysh的类路径添加多个jar文件。如何将多个jar文件添加到类路径?以下是我尝试过的: groovyConsole-cp~/lib/compile/jar/mysql-connector-java-5.1.32.jar:~/lib/compile/jar/ojdbc6-11.2.0.3.jar 但是,当我在控制台中执行此代码时,会得到以下结果: file:/Users/charlie/lib/compile/

我不得不问这个问题,这感觉很可笑,但我似乎无法向groovyConsole和groovysh的类路径添加多个jar文件。如何将多个jar文件添加到类路径?以下是我尝试过的:

groovyConsole-cp~/lib/compile/jar/mysql-connector-java-5.1.32.jar:~/lib/compile/jar/ojdbc6-11.2.0.3.jar

但是,当我在控制台中执行此代码时,会得到以下结果:

 file:/Users/charlie/lib/compile/jar/mysql-connector-java-5.1.32.jar
 file:/Users/charlie/projects/fuseanalytics/./
 file:/Users/charlie/.gvm/groovy/current/lib/ant-1.9.3.jar
 file:/Users/charlie/.gvm/groovy/current/lib/ant-antlr-1.9.3.jar
 file:/Users/charlie/.gvm/groovy/current/lib/ant-junit-1.9.3.jar
 file:/Users/charlie/.gvm/groovy/current/lib/ant-launcher-1.9.3.jar
 file:/Users/charlie/.gvm/groovy/current/lib/bsf-2.4.0.jar
 file:/Users/charlie/.gvm/groovy/current/lib/commons-cli-1.2.jar
 file:/Users/charlie/.gvm/groovy/current/lib/commons-logging-1.1.1.jar
 file:/Users/charlie/.gvm/groovy/current/lib/gpars-1.2.1.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-ant-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-bsf-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-console-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-docgenerator-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-groovydoc-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-groovysh-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-jmx-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-json-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-jsr223-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-nio-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-servlet-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-sql-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-swing-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-templates-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-test-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-testng-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/groovy-xml-2.3.6.jar
 file:/Users/charlie/.gvm/groovy/current/lib/hamcrest-core-1.3.jar
 file:/Users/charlie/.gvm/groovy/current/lib/ivy-2.3.0.jar
 file:/Users/charlie/.gvm/groovy/current/lib/jansi-1.11.jar
 file:/Users/charlie/.gvm/groovy/current/lib/jcommander-1.35.jar
 file:/Users/charlie/.gvm/groovy/current/lib/jline-2.11.jar
 file:/Users/charlie/.gvm/groovy/current/lib/jsp-api-2.0.jar
 file:/Users/charlie/.gvm/groovy/current/lib/jsr166y-1.7.0.jar
 file:/Users/charlie/.gvm/groovy/current/lib/junit-4.11.jar
 file:/Users/charlie/.gvm/groovy/current/lib/multiverse-core-0.7.0.jar
 file:/Users/charlie/.gvm/groovy/current/lib/qdox-1.12.1.jar
 file:/Users/charlie/.gvm/groovy/current/lib/servlet-api-2.4.jar
 file:/Users/charlie/.gvm/groovy/current/lib/testng-6.8.8.jar
 file:/Users/charlie/.gvm/groovy/current/lib/xmlpull-1.1.3.1.jar
 file:/Users/charlie/.gvm/groovy/current/lib/xstream-1.4.7.jar
注意,第一个jar文件mysql jar文件被添加到类加载器中,但是第二个jar文件oracle jar文件没有被添加。我还尝试过两次使用-cp参数,如:

 groovyConsole -cp ~/lib/compile/jar/mysql-connector-java-5.1.32.jar -cp ~/lib/compile/jar/ojdbc6-11.2.0.3.jar
但这只是失败了一个错误。这些文档明显缺乏任何指导,只是模糊地暗示它与Java一样工作。这就是为什么第一次尝试失败的原因

在启动groovyConsole之后,我还尝试使用Script>addjar(s)to Class path菜单选项添加Jar文件,但它没有添加任何Jar文件

那么,为什么这不能以更直接的方式工作呢?

Groovy类路径是Java类路径,您可以使用通配符将所有JAR包含在一个目录中(请注意,这不是Unix通配符,而是Java的一个功能,您可能必须在Unix上将其括在单引号中,以防止其被扩展。也就是说:

groovyConsole -cp $HOME/lib/compile/jar/* 

这让我花了很长时间才找到:

嗯,groovyConsole中的~/似乎有问题。出于某种原因,shell没有为第二个扩展它。如果groovyConsole在找不到jar文件的情况下说了些什么,请小心。然后使用
$HOME
~
不是由shell处理的,但必须由shell处理由app/java处理。设置CLASSPATH环境变量是唯一对我有效的方法。Puzzdi在菜单“将jar添加到CLASSPATH”中遇到问题,更广泛的问题是: