我希望能够输入在运行时(在“持久”程序执行期间)执行的java命令/代码,以相同的方式或尽可能接近地执行相同的代码(如果存在)在程序的源代码上(作为软件的一部分进行编程),使用 GUI 元素,如 jTextArea。
以下 StackOverflow 问题似乎是相关的,但是,连同它们的答案,似乎并不是我正在寻找的。
如何在 Java 中从控制台类获取输入?
在java中使用GUI进行控制台输入和输出
I don't希望“能够从特定控制台输入触发操作,并将反馈打印到控制台”,就像这些问题和答案中描述的控制台应用程序的情况一样。
我想要的是“能够从控制台(或GUI)输入执行我无法预测或控制的实际java代码”。
注意:这里的“我无法预测或控制”指的是“开发人员”......但是,如果我是输入代码的人,我当然可以预测和“控制”它,就像“用户”所做的那样。
由于java使用虚拟机环境,我认为它可能执行“运行时输入的代码”......但我不确定这样的事情是否可能。
例如,我想要运行时输入for(int i=0; i<3; i++){System.out.println(i);}
在“GUI 控制台”(例如 jTextArea)中,按下 Enter 键或单击“发送”按钮后,将执行(“编译并”?),并给出与原始输出相同的输出源代码,因此:
0
1
2
所以我想了解以下内容:
- 是否可以?
- 如果是,我该怎么做? (或者,如果没有,最接近的替代方案是什么?)
Use the JavaCompiler。它可以编译代码String
.
对于 E.G.看到STBC尤其是源代码。它提供了一个 GUI,并且可以在单击按钮时在文本区域中编译代码。
![STBC GUI](https://i.stack.imgur.com/LWGH1.png)
但请注意:
系统要求
STBC 将在任何具有版本 1.6+ Java Plug-In* JDK(AKA SDK)的计算机上运行。
(*) STBC 使用的 API 只是编译器的公共接口tools.jar
仅与 JDK 一起分发(通过 JDK 的“公共 JRE”似乎也获得了tools.jar
)。这会导致运行本机 jar 或 Web Start 应用程序时出现一些不寻常的要求。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)