我想从 shell 交互执行 java 命令:有没有办法做到这一点?
我所知道的最接近的是BeanShell。
不是交互式解释器或 shell,但请考虑 Eclipse 剪贴簿页面 一个可能的选项。
Java开发工具包(JDT) 贡献了一个剪贴簿设施 可用于实验和评估 构建之前的 Java 代码片段 完整的Java程序。片段是 在剪贴簿中进行编辑和评估 页面编辑器,导致出现问题 在编辑器中报道。
从 Java 剪贴簿编辑器中,您可以 选择一个代码片段,对其进行评估, 并将结果显示为字符串。 您还可以显示该对象 评估代码片段的结果 在调试器的表达式视图中。
奖励:剪贴簿是 Eclipse 的默认功能,因此不需要安装任何您尚未安装的功能。
我建议使用 DrJava http://drjava.org/。它可以满足您的目的
我认为这个人希望能够做类似以下假设示例的事情
java --cmd 'int x=5; System.out.print(x);'
您可以编写自己的程序,我们称之为
java-snippet
,它有一个名为 code
的命令行参数字符串。将代码片段插入到临时文件中。
...main(...) {
//vvv your program inserts code here vvv
//INSERT_CODE_MARKER
//^^^ ^^^
}
然后你的
java-snippet
程序编译临时文件并立即运行它。
[编辑:看来原始发帖人实际上并不想要这个,而是想要一个交互式java解释器——将此答案留在这里供后代使用]
Java Shell 工具(JShell)是一个用于学习 Java 编程语言和构建 Java 代码原型的交互式工具。它是在 JDK 9 中引入的。JShell 是一个读取-求值-打印循环工具 (REPL),它在输入声明、语句和表达式时对其求值并立即显示结果。该工具从命令行运行。
https://docs.oracle.com/en/java/javase/11/jshell/introduction-jshell.html