Janino 是一个超小、超快的 Java 编译器


Janino 是一个超小、超快的 Java 编译器。

Janino不仅可以像JAVAC一样将一组源文件编译成一组类文件,还可以在内存中编译 一个Java表达式、 一个块、 一个类体、 一个.java文件或 一组.java文件 ,加载字节码并直接在正在运行的 JVM 中执行。

JANINO 与 Apache Commons JCI(“Java 编译器接口”)和 JBoss Rules / Drools 集成。

JANINO 还可以用于 静态代码分析 或 代码操作。

主要的设计目标是保持编译器小而简单,同时提供(几乎)完整的 Java 编译器。

JANINO 只需要 Java 7(或更高版本)JRE 或更高版本,而不需要 JDK。它不依赖于任何第三方库。

JANINO 在New BSD License 下可用。

依赖:

<dependency>
    <groupId>org.codehaus.janino</groupId>
    <artifactId>janino</artifactId>
    <version>***</version>
</dependency>


如果您不使用 MAVEN,请改为执行以下操作:

安装
如果您使用的是像 ECLIPSE 这样的 IDE,您可以选择下载“janino- version -sources.jar”和“commons-compiler- version -sources.jar”并将它们配置为源附件。这将使您获得 JANINO 库的工具提示 JAVADOC 和源代码级调试。

在您的程序中使用其中一个功能,例如“表达式求值器”:

import org.codehaus.janino.*;
 
ExpressionEvaluator ee = new ExpressionEvaluator();
ee.cook("3 + 4");
System.out.println(ee.evaluate());
// Prints "7".

点击标题