Groovy没有在.groovy / lib中读取jar文件

时间:2011-06-09 14:10:33

标签: jdbc groovy classpath

我遇到jar文件和groovy的问题。对于一些具体的例子,我正在尝试连接到postgresql数据库并在使用时 sql = Sql.newInstance("jdbc:postgresql://localhost", "user", "pass", "org.postgresql.Driver") 我得到了org.postgresql.Driver的ClassNotFound异常。我在我的$ {user.home} / .groovy / lib中有postgresql jar,并且在groovy-starter.conf中从那里加载的行没有被注释掉。我对dbunit.jar文件也有类似的问题。

如果我尝试使用groovy -cp手动添加类路径,我会收到错误消息 Caught: java.io.UnsupportedEncodingException: p

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

根据CLI帮助 - http://groovy.codehaus.org/Groovy+CLI

$groovy -help
usage: groovy
 -a,--autosplit <splitPattern>   automatically split current line
                                 (defaults to '\s')
 -c,--encoding <charset>    specify the encoding of the files
 -e <script>               specify a command line script
 -h,--help                 usage information
 -i <extension>            modify files in place
 -l <port>                 listen on a port and process inbound lines
 -n                        process files line by line
 -p                        process files line by line and print result
 -v,--version              display the Groovy and JVM versions

groovy -cp会告诉groovy加载不存在的字符集p

如果您使用${user.home}/.groovy/lib的正确路径,则尝试使用${user.home}应该有效。如果您在操作系统上添加信息,我们可能会看到您是否正确。

作为WA - 只需将CLASSPATH环境变量导出到jar所在的位置。

Windows: set CLASSPATH=c:\temp\postgresql.jar;c:\temp\dbunit.jar ... Unix / Linux(KSH): export CLASSPATH=${HOME}/temp/postgresql.jar:${TEMP}/temp/dbunit.jar ...