与MSSQLSERVER 2008和Groovy的Manifest.MF问题

时间:2012-11-09 16:27:03

标签: sql-server-2008 jdbc groovy sqljdbc mssql-jdbc

我在GGTS IDE中创建了一个简单的Groovy项目,该项目连接到Oracle和SQLServer。程序在IDE中运行正常,但是当我通过命令行运行程序时,我似乎在MANIFEST.MF中遇到了一些enconding错误。请参阅下面的堆栈跟踪:

命令行

groovy -cp lib\ojdbc14_g.jar lib\sqljdbc4.jar src\Starter.groovy

结果

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
C:\workspace-ggts-3.1.0.RELEASE\Test\lib\sqljdbc4.jar: 1: unexpected char: 0x3 @ line 1, column 3.
   PK♥ h?I@            ¶   META-INF/MANIFEST.MF¡|GôΓ┌▓εⁿD∞ ░=x/êsä      8◄o ï∟B▲
ë╔
     ^

1 error

过去连接到MSSQLServer我使用了以下jar:

  • msbase.jar
  • msutil.jar
  • mssqlserver.jar

这一次,当我查找2008年的jdbc jars时,我得到了 sqljdbc4.jar 。同样,它可以在IDE中运行,但不能从命令行运行。我已经把问题列在了sqljdbc4.jar中,因为我评论了与之相关的所有代码,程序运行正常,只有oracle jar引用。

  1. 有人知道为什么会这样吗?
  2. 您使用什么jar从命令行使用groovy连接到sqlserver 2008?
  3. 感谢。

1 个答案:

答案 0 :(得分:1)

您需要在类路径条目之间使用分号(假设您在Windows上)

groovy -cp lib\ojdbc14_g.jar;lib\sqljdbc4.jar src\Starter.groovy

如果您使用的是Linux / Mac,请使用冒号

groovy -cp lib/ojdbc14_g.jar:lib/sqljdbc4.jar src/Starter.groovy