解决方法
基于
this Java Tip,如果您愿意使用com.sun.tools.javac.Main.compile(source),则可以即时编译Java字符串.
com.sun.tools中的类当然不是官方Java API的一部分.
在Java 6中有一个编译器API来提供对编译器的编程访问.见the documentation for interface JavaCompiler.
任何标准的API都没有提供直接的eval,但存在的工具是建立自己的.如果您尝试执行完全一般的eval,则可能会出现“JVM内部JVM”问题,因此最好限制您要执行的操作.
另请参阅:Is there an eval() function in Java?的一些很好的评论和解释.