首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> J2ME

Eclipse ProGuard 報錯 "Could not find jar tool executable" 完美解決方案

     編輯:J2ME

錯誤現象

Eclipse + EclipseMe 使用 ProGuard 生成混淆包時拋出:

Could not find jar tool executable.
The jar tool requires a full JDK installation.
Specify a full JDK installation in the Java preferences.

明明已安裝完整 JDK,卻仍報錯。

根本原因

  • 混淆過程中,ProGuard 需調用 jar 命令對生成的 JAR 進行預驗證/重打包。
  • EclipseMe 在 已安裝的 JRE 列表 中尋找 jar.exe。
  • 若列表中同時存在 JRE 和 JDK,Eclipse **默認識別為 JRE** (因 JRE 目錄名通常排在前面),導致找不到 bin/jar.exe (JRE 不含開發工具)。

解決步驟 (圖文級)

  1. 打開 Window → Preferences → Java → Installed JREs (中文:窗口 → 首選項 → Java → 已安裝的 JRE)。
  2. 檢查列表:若條目指向 C:\Program Files\Java\jre1.8.xxx (JRE 目錄),**編輯該條目**。
  3. 將 JRE Home 目錄修改為 JDK 安裝根目錄,例如 C:\Program Files\Java\jdk1.8.xxx。
  4. 適用後,EclipseMe 將在該目錄下的 bin/jar.exe 找到工具,錯誤消失。

驗證

  • 重新運行 ProGuard 混淆任務,控制台輸出正常,生成 obfuscated.jar。
  • 該設置不影響項目編譯運行 (JDK 含 JRE 功能),一勞永逸。

延伸提示

  • 同理,任何需要 javac、javadoc、jar 等開發工具的 Eclipse 外掛 (Maven、Ant 外部構建、註解處理器等) 都要求 Installed JREs 指向 JDK。
  • 建議團隊統一在 eclipse.ini 中指定 -vm 參數指向 JDK javaw.exe,從源頭避免此類問題。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved