java - 是否有一种无需缓存即可工作的 Java 脚本语言?吉通?时髦? ETC?

标签 java scripting groovy jython

我们有一个现有的基于 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/

相关文章:

用于形成和解析 SOAP 消息的Java库

java - setAsciiStream 方法有问题吗?

java - 将列表中的元素移动到最后一个索引

java zoneddatetime : keep timezone ID when doing calculations

java - 进入主屏幕后如何重新启动应用程序?

java - 如何从 netbeans RCP 应用程序的文本字段获取输入?

shell - 从文件中提取单词

bash - Linux/Unix Bash 脚本如何获得自己的 PID?

bash - 如何在 shell 脚本中使用 echo 保留前导空格?

groovy - 如何让 Jenkins/Hudson 工作监视其他一些工作并决定是否建立?