java - 运行字符串中包含的代码段

标签 java reflection

我在字符串中有一段 Java 代码。

String javaCode = "if(polishScreenHeight >= 200 && " +
    "polishScreenHeight <= 235 && polishScreenWidth >= 220) { }";

是否可以将此 Java 字符串转换为 Java 语句并运行它?可能使用 Java 反射?

最佳答案

正如已经建议的那样,您可以使用 Compiler API 即时编译、保存和运行代码。 .

另一个巧妙的选择是使用 beanshell 。 Beanshell 不再被积极开发,但我可以保证它的可靠性,我已经在多个生产项目中成功使用了它。

关于java - 运行字符串中包含的代码段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58789109/

相关文章:

java - CORS政策: No 'Access-Control-Allow-Origin' header is present on the requested resource Spring Boot Rest API

java - 在 Java 中将输入存储为不同类型

java - Eclipse 默认带有插件

java - 无法使用多态访问具体类的唯一属性

objective-c - 有没有办法从字符串反射调用 Objective-C 中的函数?

java - 基于配置启用/禁用 JUnit 测试

c# - 如何检测和记录委托(delegate)方法签名中的参数名称和值?

java - 如何使用 REFLECTION 或任何其他 API 初始化最终类中的私有(private)变量?

java - 加载事先不知道包的 Java 类

java - 正确调用反射API - Android