gpt4 book ai didi

Java ScriptEngine - 禁用导入

转载 作者:太空宇宙 更新时间:2023-11-04 14:53:49 28 4
gpt4 key购买 nike

我到处搜索但一无所获,所以我想使用Java内置的JavaScript引擎,但是用户无法导入java类,例如以下任何一个:

importPackage(package.example);

importClass(package.example.MessWithEverythingClass)

new package.example.MessWithEverythingClass(ApplicationIsBroken aib);

最佳答案

我有点困惑。根据你的标题,我认为你想阻止用户在 JavaScript 中导入类。在这种情况下,这个问题已经在这里被问过, security problem with Java ScriptEngine 。一些解决方案建议查看 Java SecurityManager,另一位用户说他通过将“importPackage = null”放在所有脚本的顶部来解决这个问题。

相反,根据您脚本的内容,我感觉您在导入 Java 类时遇到了困难。如果是这样的话我在这里回答, Use a jar in JavaScript through Java ScriptEngine基本上还有另一种您没有展示的导入 JavaScript 的方法。我就是这样做的,

    pack = Packages.abc.foo.pack.name;

var foo = new pack.ClassFromTheJarFile("arg1","arg2");

foo.doSomething();

var fooSister = new pack.AnotherCLassFromTheJarFile("arg1");

fooSister.doSomthingFromThisClass();

虽然该示例使用了 jar 文件中的包,但它不必来自 jar 文件,并且代码仍然保持不变。

关于Java ScriptEngine - 禁用导入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23444878/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com