有没有办法用我们的程序发布Java编译器? [重复]

问题描述 投票:0回答:2

我们希望让我们的用户能够编写我们在库运行时调用的小型Java方法。这些用户没有安装JDK,也不知道如何操作。但他们确实安装了Java并运行我们的Java库。

有没有办法我们可以用我们的库发送一些最小的Java编译器?

java javac
2个回答
4
投票

javac编译器有一个编程接口(由jshell使用,除其他外),并且存在于Java 9及更高版本的java.compilerjdk.compiler模块中。表达对这些模块的依赖关系并使用jlink构建运行时。


0
投票

您可以通过反复试验来隔离一些可执行文件,我已经为jpsjcmd工具执行了此操作,以便为我的应用程序进行流程检查。

我刚刚为javac快速尝试了这个并设法正确编译它,但希望这不是使用我的一些系统变量。

你需要一个文件夹结构

bin
-> javac.exe
-> jli.dll

lib
-> tools.jar

将代码放入bin文件夹并运行javac

请记住,运行javac所需的是依赖于操作系统的,并且在Windows上进行了测试。您可能需要一些额外的文件用于其他操作系统,如Linux,因为这是我遇到的问题之一。

© www.soinside.com 2019 - 2024. All rights reserved.