【问题标题】:Convert .java to .class within a java program [duplicate]在java程序中将.java转换为.class [重复]
【发布时间】:2013-08-07 13:28:35
【问题描述】:

我在运行时创建了几个 .java 文件。我想在我的程序中使用那些创建的 .java 文件作为类。我怎么能做到这一点,而无需第二次启动程序?所以我想在运行时编译 .java 文件并从现在开始使用新的 .class 文件...

【问题讨论】:

  • 搜索 Java 编译器 API。

标签: java class compilation runtime


【解决方案1】:

使用 Java 编译器 API:

public class SimpleCompileTest {
    public static void main(String[] args) {
        String fileToCompile = "test" + java.io.File.separator +"MyClass.java";
        JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
        int compilationResult = compiler.run(null, null, null, fileToCompile);
            if(compilationResult == 0){
               System.out.println("Compilation is successful");
           }else{
               System.out.println("Compilation Failed");
           }
    }
}

Detailed Example with explanation

【讨论】:

    【解决方案2】:

    您可以使用 JDK 中包含的 Compiler API。 See here.

    【讨论】:

      猜你喜欢
      • 2014-11-22
      • 1970-01-01
      • 1970-01-01
      • 2014-09-17
      • 2021-02-03
      • 2012-10-14
      • 2012-12-11
      • 2013-01-28
      相关资源
      最近更新 更多