我正在开发一个名为Enchanting的应用程序。该应用程序基于Scratch,发出Java源代码并编译它以上传到LEGO Mindstorms NXT机器人。
虽然应用程序很早,但用户很难安装它。
现在Windows用户必须:
如果我可以提供包含JDK和LeJOS的安装程序,我可以在运行时找出环境变量,并且该过程变为:
有没有办法重新分配JDK?
(顺便提一下,Processing(简化的基于文本的编程环境)似乎提供了JDK附带的版本,因此看起来有一种合法的方式)。
附录:我希望没有安装java的Windows用户能够运行单个.exe文件来安装JDK,LeJOS和Enchanting。
有关重新分发的信息是针对Java 8 JDK的here for Java 10 JDK和here。目前Java 8比Java 10更详细。
并且您可以使用PackJacket来打包所需的所有文件并创建安装程序。
假设您满足分发内容所需的所有法律术语,您可以使用izpack来安装所有先决条件,包括JDK / JVM和环境变量的配置。
相当多的基于IBM Eclipse的工具都有JDK。
或者你可以直接发出字节码。您可以捆绑一个小得多(比JDK)JVM动态语言,然后使用它来编译为字节码或使用为此目的而制作的库。
(我从Projects using Kawa页面得到以下内容)
App Inventor for Android使用Kawa翻译其视觉块语言。
... Nice编译器(nicec)使用Kawa的gnu.expr
和gnu.bytecode
包生成Java字节码。 ...
最后一个是使用Kawa语言框架生成字节码的那个。
不要忘记Groovy,Jython,Clojure和Ruby。关于Groovy的有趣事实,解释器可以编译Java代码,因为Groovy(或多或少)是Java的超集。