0

OracleとSQLServerに接続する単純なGroovyプロジェクトをGGTSIDEで作成しました。プログラムは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にある問題を特定しました。これは、それに関連するすべてのコードにコメントを付け、プログラムがoraclejar参照だけで正常に実行されたためです。

  1. なぜこれが起こっているのか誰かが知っていますか?
  2. groovyを使用してコマンドラインからsqlserver2008に接続するためにどのjarを使用していますか?

ありがとう。

4

1 に答える 1

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
于 2012-11-09T16:44:20.763 に答える