在我的应用程序中集成 Java 编译器



我想在我的应用程序中集成java编译器,但我不知道该怎么做。我希望该用户可以在我的应用程序上编译和运行代码。如果有人可以帮助我,那么请告诉我应该从哪里开始。

从Java 1.6开始,标准JDK附带了一个编译器的API。这意味着,您可以轻松地编写一个将编译其他程序的Java程序。

http://docs.oracle.com/javase/7/docs/api/javax/tools/JavaCompiler.html

根据 Aaron 的评论进行编辑:使用编译器 API 的应用程序必须使用完整的 JDK 运行。JRE 不包括编译器 API 实现。

第二种选择是将 Eclipse Java 编译器嵌入到您的代码中。这样做的好处是,您的应用程序不需要 SDK 即可运行 - 只需添加此单个 JAR。

详细信息记录如下:http://help.eclipse.org/kepler/index.jsp?topic=%2Forg.eclipse.jdt.doc.user%2Ftasks%2Ftask-using_batch_compiler.htm

注意:向应用程序添加编译器会产生巨大的安全风险。这基本上意味着任何人都可以开始对您的应用程序执行任何操作。浮现在脑海中的事情是:

  • 攻击其他计算机、人员和站点
  • 查看运行应用程序的计算机上的所有数据
  • 分析计算机所在的网络并攻击同一网络中的任何其他计算机
  • 在计算机上安装特洛伊木马或病毒

最新更新