2012-05-21 74 views
0

今天當我嘗試從Eclipse IDE調用批處理文件時出現了一個奇怪的問題。Java - 導出的JAR和Eclipse IDE之間的不同行爲

對於一個普通用戶的設置是:

  • 呼叫.bat文件
  • 這將設置一些環境變量
  • 並調用一個Eclipse RCP應用程序

設置爲我程序是:

  • Call th e相同的.bat文件通過Runtime.exec()

當調用它作爲普通用戶時,一切運作良好,RCP開始。

當通過Runtime.exec()在Eclipse IDE中調用它時,我收到一條錯誤消息,抱怨Program Files\jre6\bin\server\jvm.dll could not be found(儘管它在那裏)。

將我的程序導出爲可執行.jar文件時,效果很好,就像我自己點擊.bat一樣。

有什麼區別? (操作系統爲Win7的)

+1

驗證您的java構建路徑在elipse –

回答

0

在Eclipse中,

  • 右鍵單擊該項目,然後單擊 「屬性」。
  • 選擇「Java Build Path」。
  • 選擇「庫」選項卡。
  • 選擇「JRE System Library」,然後單擊「編輯」。

檢查系統庫是否指向有效的JDK安裝(不是JRE)。如果它不指向有效的JDK安裝。

    的「已安裝的JRE」
  • 單擊Add,指向有效的JDK安裝,然後單擊OK
  • 選擇「替代JRE」,然後點擊。
  • 在「Alternate JRE」下拉列表中,選擇新添加的有效JDK,然後單擊Finish。

運行程序並檢查。

+0

嘗試使用不同的已安裝的jdks,但沒有效果。獨立於定義的JDK,它始終抱怨缺少的jre6/server/jvm.dll ...它似乎隱藏在RCP中(不幸的是不可更改)。所以對我來說更令人困惑。 – Schwoabaseggele

0

好吧。

這似乎是Eclipse 3.7的一個特定問題。

安裝4.2之後,所有的工作都很完美。