我目前正在评估构建一个小型 Web 应用程序的项目的可行性,该应用程序提供类似于tryruby和codeacademy的 REPL 编程环境,并且一直在寻找可能的解决方案来安全地评估用户提交的代码,关于服务器端解决方案我已经读到 JVM 提供了最好的沙盒环境,因为它内置了安全措施。
我阅读了有关JavaTM Scripting API的信息,它可用于评估各种脚本引擎/解释器上的代码,例如 rhino(javascript)、jruby、jython 和 Quercus(php)。是否有可能让单个服务器运行 JVM 来评估多种不同语言的用户代码?这会有效吗?如果不是,我还有什么其他选择?