【问题标题】:Manifest.MF issue with MSSQLSERVER 2008 and GroovyMSSQLSERVER 2008 和 Groovy 的 Manifest.MF 问题
【发布时间】:2012-11-09 16:27:02
【问题描述】:

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

命令行

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 jar 时,我得到了 sqljdbc4.jar。它再次在 IDE 中工作,但不能在命令行中工作。我已经挑出问题出在 sqljdbc4.jar 中,因为我注释了与此相关的所有代码,并且仅使用 oracle jar 引用程序运行良好。

  1. 有人知道为什么会这样吗?
  2. 您使用什么 jars 从命令行通过 groovy 连接到 sqlserver 2008?

谢谢。

【问题讨论】:

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


    【解决方案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
    

    【讨论】:

    • 感谢您的意见,但没有奏效。我仍然得到完全相同的错误。
    • @Viriato 您使用的是什么版本的 Groovy?对于低于 1.7.1 的版本,我可以找到 bug report
    • Groovy 2.0.5 和 Java 1.6.0_20
    • 确切的一个。这很奇怪,因为如果我删除 sqlserver 代码并只保留 oracle 代码,它就可以工作。感觉好像sqljdbc4.jar有问题
    • 它与 ide 的 jar 副本完全相同?
    猜你喜欢
    • 1970-01-01
    • 2013-02-14
    • 1970-01-01
    • 2010-09-24
    • 2020-01-03
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 2011-01-24
    相关资源
    最近更新 更多