千家信息网

JDK6.0中如何使用Compiler API

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章将为大家详细讲解有关JDK6.0中如何使用Compiler API,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。public class CompilerA
千家信息网最后更新 2026年11月02日JDK6.0中如何使用Compiler API

这篇文章将为大家详细讲解有关JDK6.0中如何使用Compiler API,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

public class CompilerAPITester {   private static String JAVA_SOURCE_FILE = "DynamicObject.java";   private static String JAVA_CLASS_FILE = "DynamicObject.class";   private static String JAVA_CLASS_NAME = "DynamicObject";   public static void main(String[] args) {       JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();       StandardJavaFileManager fileManager = compiler.getStandardFileManager(null, null, null);       generateJavaClass();        try {           //将产生的类文件拷贝到程序的ClassPath下面,下面这一行代码是特定于Windows+IntelliJ IDEA 6.0项目,不具有移植性           Runtime.getRuntime().exec("cmd /c copy "+JAVA_CLASS_FILE+" classesproductionJDK6Features");           Iterable sourcefiles = fileManager.getJavaFileObjects(JAVA_SOURCE_FILE);           compiler.getTask(null, fileManager, null, null, null, sourcefiles).call();           fileManager.close();           Class.forName(JAVA_CLASS_NAME).newInstance();//创建动态编译得到的DynamicObject类的实例       } catch (Exception ex) {           ex.printStackTrace();       }   }   public static void generateJavaClass(){       try {           FileWriter fw = new FileWriter(JAVA_SOURCE_FILE);           BufferedWriter bw = new BufferedWriter(fw);           bw.write("public class "+JAVA_CLASS_NAME+"{");           bw.newLine();           bw.write("public "+JAVA_CLASS_NAME+"(){System.out.println("In the constructor of DynamicObject");}}");           bw.flush();           bw.close();       } catch (IOException ex) {           ex.printStackTrace();       }   }}

程序运行后,会产生DynamicObject.java和DynamicObject.class两个文件,并在控制台输出

关于"JDK6.0中如何使用Compiler API"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

篇文章 文件 更多 程序 不错 实用 一行 两个 代码 内容 动态 实例 拷贝 控制台 文章 知识 移植性 项目 参考 帮助 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海挚品互联网科技有限公司 上海喔噻互联网科技有限公司 互联网巨头科技公司 互联网与科技金融数据 互联网科技公司发展 奇酷互联网科技 杭州互联网科技公司 互联网与未来科技 极限挑战互联网科技 奇酷互联网络科技公司 字节跳动和互联网科技 互联网软件和科技 佛山市拉法互联网科技有限公司 智帮互联网科技公司最近动向 互联网高科技行业有哪些企业 互联网领先科技活动 保山互联网科技靠谱吗 北京品多多互联网科技有限公司 瑞安市蟠桃会互联网科技有限公司 如何强化互联网金融科技 美国互联网黑科技 上海致骋互联网科技 融贸通互联网科技 互联网 科技服务平台 山东吉时兔互联网科技有限公司 广东工业互联网大赛深圳学泰科技 艺电能源互联网科技有限公司招聘 现代互联网科技公司 数字科技和互联网金融哪个好 10位科技互联网大佬
0