我想知道是否有某种 shell 只会监听用户输入(带有行缓冲区)并从 main 方法内部运行,包括类路径上的 jdk。这样它看起来就像浏览器中的 JavaScript 控制台或 groovy 控制台。这对于测试代码片段会很方便。
可以将其写入 shell 并按回车键:
Map<String, String> env = System.getenv();
for (String envName : env.keySet()) {
System.out.format("%s=%s%n", envName, env.get(envName));
}
这就是 bsh.Interpreter 可以做的。但是我发现它很难使用。我无法在 shell 行上用光标向后/向左移动... ^[[D^[[D^[[D .... 我只能删除最后一个字符。不确定它是否特定于操作系统(我在 linux 上),但它非常不方便......
我指的是 Java 语言,而不是 Jruby、Jython 或 Groovy