1

我正在开发一个包含许多类文件的 BlackBerry 应用程序;目前有 16 个 Java 类,并且它们不断增加,因为这个应用程序很复杂,有很多屏幕和功能。我正在使用 BlackBerry Java 插件在 Eclipse 中工作。我正在使用黑莓 JRE 6.0。我最近开始收到以下错误:

错误:无法运行程序“jar”:CreateProcess error=2,系统找不到指定的文件

我有谷歌这个错误,许多人认为这是由 Java 环境变量路径引起的。但是,我已经检查过了,这方面的一切似乎都很好。我注意到当类的数量增加或类变得更长时,会发生此错误。我通过减少项目中的类数量来消除错误。我创建了单独的项目,在每个项目之间划分了类,并且编译得很好。所以我可以相信源代码没有问题。

任何人都可以指导如何在包含多个类的单个项目中克服此错误。请帮忙。

编辑:我在黑莓支持论坛上遇到了以下内容:

“我认为最常见的原因(假设您安装了 JDK)是项目中有大量文件,和/或项目目录离根目录很远。

问题在于 RAPC 编译器调用 JAR 实用程序,构建一个包含应用程序中所有类文件的命令行。如果命令行长度超过系统允许的最大长度,你会得到这个错误。”

如果这是导致它的原因,如何解决此问题。

4

2 回答 2

4

我很幸运能解决这个错误。链接对 BlackBerry 支持论坛非常有帮助。对于面临相同问题的其他人,以下步骤解决了我的问题:

  1. 右键单击我的电脑。转到属性。
  2. 单击高级系统设置。
  3. 单击环境变量
  4. 突出显示 PATH 并单击编辑。添加 C:\Program Files (x86)\Java\jdk1.6.0_26\bin; 到 PATH 的开头。

第 4 步将 java jar 文件添加到 PATH 变量中,并将其添加到更靠近根的位置。在编译具有多个类的项目时,靠近根目录会很有帮助。

于 2013-02-17T08:27:57.310 回答
1

正如错误Cannot run program "jar"在 Windows 下所说,这意味着它找不到 jar.exe 可执行文件。

至少在我的情况下,问题是 JAVA_HOME 指向我计算机上的 JRE(在其“bin”文件夹中没有 jar.exe),而不是指向 jar.exe 位于其“bin”下的 JDK “ 文件夹。

解决方案非常简单——将 JAVA_HOME 更改为指向 JDK 根文件夹——在我的例子中是“C:\Program Files\Java\jdk1.7.0_15”。

于 2013-06-17T14:06:39.913 回答