我们有一个现有的基于 java 的重量级项目,需要一个交互式脚本解释器。经过大量研究后,我们最终选择了 Jython,原因之一是客户团队已经拥有大量 Python 专业知识,并且以接近他们已知语言的语言向他们提供 API 更容易销售。
好吧,一开始这很好,但结果出现了一个问题——有些部署环境是为普通用户(即非管理员)锁定的。此类普通用户无权在其计算机的本地驱动器上的任何位置进行写入。此外,他们的 $Home(在 Windows 上)通常通过高延迟网络(通常为 100 毫秒以上),最重要的是,可写文件夹本身的大小通常低于 10mb。是的,那是兆字节。
鉴于这些限制,看起来 Jython 可能不符合要求。我们需要能够在不访问低延迟磁盘缓存的情况下运行,即使这意味着很小的速度损失。通过 Google 和论坛进行搜索后,Jython 中似乎没有办法实现此目的。
有几个明显的解决方法:
- 让客户打开他们的安全性。不幸的是,这是一个庞大的官僚机构,试图证明改变企业范围的安全策略来为一个产品提供脚本并不是一个真正的选择。
- 设置一个虚拟磁盘并将脚本解释器的缓存放在那里。在 Windows 上这种方法的问题在于,它涉及到对操作系统的一定程度的干扰,无论我们的应用程序是否运行,这种干扰都会持续存在。 (至少据我了解这样做的技术)
所以这是我的请求 - 有人知道有一个具有交互模式并且不一定需要磁盘缓存的 java 脚本解释器吗?它不一定需要使用 python 语法,如果有办法让其他人(即:javaLUA、Groovy 等)来做到这一点,我会愿意接受。
最佳答案
你可以设置
python.cachedir.skip=true
不过,您必须检查您的导入...
http://wiki.python.org/jython/PackageScanning
http://ghattus.com/2009/09/no-wlst-cachedir-with-python-cachedir-skip.html
关于java - 是否有一种无需缓存即可工作的 Java 脚本语言?吉通?时髦? ETC?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1876008/