6

我正在开发一个名为Enchanting的应用程序。该应用程序基于Scratch,发出 Java 源代码并对其进行编译以上传到 LEGO Mindstorms NXT 机器人。

虽然该应用程序很早,但用户很难安装它。

现在 Windows 用户必须:

  • 下载并安装 Java 开发工具包
  • 下载并安装 LeJOS(NXT 的一个 java 库)
  • 可能调整环境变量
  • 然后他们可以下载、安装和运行 Enchanting 本身

如果我可以提供一个包含 JDK 和 LeJOS 的安装程序,我可以在运行时找出环境变量,并且过程变为:

  • 下载、安装和运行 Enchanting

有没有办法重新分发 JDK?

(顺便说一句,Processing(一种简化的基于文本的编程环境)似乎提供了一个随 JDK 一起提供的版本,因此似乎有一种合法的方式可以这样做)。

附录:我希望没有安装 java 的 Windows 用户能够运行单个 .exe 文件来安装 JDK、LeJOS 和 Enchanting。

4

4 回答 4

4

Java 10 JDK和Java 8 JDK的重新分发信息在此处。目前,Java 8 比 Java 10 详细得多。

您可以使用PackJacket来打包您需要的所有文件并创建一个安装程序。

于 2010-11-09T01:04:27.693 回答
0

Or you could just emit bytecode directly. You could bundle a much smaller (than the JDK) JVM dynamic language then use it to compile to bytecode or use libraries made for that purpose.

(I got the following from the Projects using Kawa page)

App Inventor for Android uses Kawa to translate its visual blocks language.

...The Nice compiler (nicec) uses Kawa's gnu.expr and gnu.bytecode packages to generate Java bytecode. ...

It's this last one is the one that uses the Kawa language framework to generate bytecode.

Don't forget about Groovy, Jython, Clojure, and Ruby. Interesting fact about Groovy, the interpreter can compile Java code since Groovy is (more or less) a superset of Java.

于 2010-11-09T01:43:13.993 回答
0

假设您满足分发内容所需的所有法律条款,您可以使用izpack安装所有先决条件,包括 JDK/JVM 和环境变量配置。

于 2010-11-09T00:30:07.193 回答
0

相当多的基于 IBM Eclipse 的工具都带有 JDK。

于 2010-11-09T00:33:55.147 回答