2012-11-16 41 views
-2

Possible Duplicate:
Manifest.MF issue with MSSQLSERVER 2008 and Groovyrg.codehaus.groovy.control.MultipleCompilationErrorsException時我已經在類路徑

2個不同的JDBC罐子我有2數據庫連接非常簡單Groovy腳本:

  1. 一個DB連接到Oracle
  2. 另一個分貝連接SQLServer的

問題

當我通過GGTS編輯器(Groovy和Grails版本的SpringSource Tool Suite)運行程序時,兩個查詢運行並返回結果正常。但是,當我在命令行中運行程序,從項目文件夾,如下所示:

groovy -cp lib\jtds-1.3.0.jar lib\ojdbc6-11g.jar src\Starter.groovy 

我收到以下錯誤:

C:\workspace-ggts\Test>groovy -cp lib\jtds-1.3.0.jar lib\ojdbc6-11g.jar src\Star 
ter.groovy 
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed: 
C:\workspace-ggts\Test\lib\ojdbc6-11g.jar: 1: unexpected char: 0x3 @ line 1, col 
umn 3. 
    PK♥ ßî∟9    ♦ META-INF/■╩ ♥  ☻  PK♥♦ ßî∟9   ¶ M 
ETA-INF/MANIFEST.MF?æ┴N├0►D∩æ≥☼½₧α►7)R[rúΘÑá☻R½^æq6─òcç╡SΦ▀π4◄ →  ─╒3;π}╗µ 
Z▬h]┤C▓╥Φ¶↕▬ç┴¬¬§V¿↔w■╤ï:7ö┬♥qí►2C╡íôtf▌Jº0♣│╧ƒ┼öφ9 
    ^

1 error 

我曾嘗試

  1. 我曾嘗試使用jtds驅動程序連接到SQLServer,因爲我認爲問題是從Microsoft網站sqljdbc4.jar based on this same problem reported differently here

  2. 我已經試過把分號分開classpath依賴關係,仍然是同樣的錯誤。

  3. 我已將Java版本升級到1.7。 Groovy版本是2.0.5

  4. 從IDE運行良好,但從命令行我得到的錯誤。

  5. 如果我註釋掉一個數據庫訪問代碼(連接,查詢,結果集的println)離開我的Groovy腳本只有一個數據庫連接&訪問該程序從命令行運行良好。例如:

groovy -cp lib\jtds-1.3.0.jar src\Starter.groovy 

或本:

groovy -cp lib\ojdbc6-11g.jar src\Starter.groovy 

確實工作。只要我在第二個數據庫訪問的類路徑中添加代碼和jar,就會得到上面報告的錯誤。

我出的想法或意見

+0

不是重複我遇到的問題是一樣的,但我措辭不同的看法。如果你閱讀這個問題,你會看到我提到了我的另一個問題。這是一個有效的問題 – Viriato

回答

1

文件在類路徑中需要與Windows上分號分隔。在類似Linux或OSX的類Unix平臺上,分隔符是冒號。 Groovy將第二個jar文件視爲腳本,將腳本名稱視爲第一個命令行參數。

試試這個:

groovy -cp lib\jtds-1.3.0.jar;lib\ojdbc6-11g.jar src\Starter.groovy 

你得到一個不同的錯誤與?

+0

我告訴他們,當他們問這之前http://stackoverflow.com/questions/13311992/manifest-mf-issue-with-mssqlserver-2008-and-groovy顯然,儘管他們說什麼,他們用分號分隔時不聽 –

+0

@ataylor即使我仍然得到同樣的確切的錯誤。蒂姆耶茨我不知道你的問題是什麼。我確實傾聽,成爲解決方案的一部分而不是負面的。 – Viriato

+0

它工作!顯然,當我把分號放在這樣一個空格時:** lib \ jtds-1.3.0.jar; LIB \ ojdbc6-11g.jar **而不是做這種**的lib \ JTDS-1.3.0.jar; LIB \ ojdbc6-11g.jar ** 感謝ataylor和感謝tim_yates以及 – Viriato

相關問題