【发布时间】:2015-01-24 12:46:08
【问题描述】:
我正在尝试测试 BeanShell 的命令行解释器如何在我的机器上处理基本的 Java 命令和语法,并看看我是否可以以任何方式自定义它的行为。我在运行 OS X 10.10.1 的机器上安装了 2.0b4 版本(按照说明,JAR 文件位于 /Library/Java/Extensions 中)。
它是我一直在寻找的最接近的东西,一个交互式 Java 解释器,但它没有一些好的解释器应该具备的标准功能。
我希望能够使用向上箭头键重用以前的命令,但目前它无法识别它,它只显示一个控制序列。有没有办法为 BeanShell 定制这个?
-
如果我事先创建了一个变量,有没有办法让 BeanShell 打印出它的值,只需命名它,比如
String s = new String("Hello World!"); 小号; 世界你好!
这在 Python 中是可能的。
-
根据关于导入 Java 类的文档
which(<java class>);应该返回指定 Java 类的类路径位置。但是which( java.lang.String );对我不起作用,我得到一个NullPointerException:bsh % which(java.lang.String);
启动 ClassPath 映射 映射:目录/Users/srm // 错误:// 未捕获的异常:方法调用 cp.getClassSource:在第 42 行:在文件:/bsh/commands/which.bsh:cp .getClassSource (className)从方法调用:which : at Line: 8 : in file: : which ( java .lang .String ) 目标异常:java.lang.NullPointerException
java.lang.NullPointerException
任何指针或帮助将不胜感激。
【问题讨论】:
-
请注意,正如stackoverflow.com/questions/26549307/current-state-of-beanshell 这样的问题所见,BeanShell 本身目前并未得到积极维护。我仍然将它添加到我接触的每个 Java 项目中,因为它对开发/调试非常有用。
-
我应该从 90 年代风格的网页上猜到了 :)