无法从可执行 JAR 中找到 javac 编译器



我正在开发一个简单的Java编辑器,它使用ant来调用JDK

在日食上一切正常,我能够构建构建.xml。问题是当我将编辑器导出到可执行 jar 时,我尝试构建项目的构建.xml,我遇到了著名的问题:

Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK.
It is currently set to "C:Program Files (x86)Javajre7"

重要:

如果我从cmd运行我的jar编辑器,它可以正常工作,但是如果我双击编辑器jar它不起作用,我遇到了著名的问题(找不到javac编译器...

通知:

  1. JAVA_HOME指向 JDK

  2. 我正在使用蚂蚁.jar
  3. 蚂蚁启动器.jar

  4. Eclipse指向我的JDK安装。

  5. 工具.jar被添加到 JDK/lib 文件夹

解决方案是在目标上fork属性设置为javac是。

也许JAVA_HOME没有指向JDK

JAVA_HOME当前设置为 C:\Program Files (x86)\Java\ jre7

该消息内容丰富且切中要害,不是吗?

您的JAVA_HOME看起来像是指向 JRE 安装,而不是 JDK 安装。 (错误消息说它"C:Program Files (x86)Javajre7"

JRE 不包含任何 Java 开发工具...例如 Ant 尝试加载/使用的javac Java 编译器。

如果您的机器上确实安装了JDK,那么您需要做的就是更改JAVA_HOME环境变量,以便它引用它......而不是 JRE。 否则,您还需要下载并安装相关的 JRE。

最新更新