JDK6.0中如何使用Compiler API
发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,这篇文章将为大家详细讲解有关JDK6.0中如何使用Compiler API,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。public class CompilerA
千家信息网最后更新 2025年01月21日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安全错误
数据库的锁怎样保障安全
上海联派网络技术有限公司
元气骑士显示登录的服务器不匹配
太极模块下载提示请求服务器失败
期刊会被数据库收录吗
aspen数据库比别人的少
滨海租房网络安全
嘉兴官方软件开发流程
广东汕尾服务器服务器租用
在日常生活中如何注意网络安全
大话哪个服务器人多
cts服务器
梅州软件开发招聘
临沂有做网络安全的公司吗
临沂数据库置疑修复培训
数据库安全性措施完整性措施
网络服务器机折旧年限是几年
上海蒙爱网络软件开发中心
全县服务器安装汇报
无锡企业软件开发服务费
桓台企业软件开发咨询
数据库最高分查询
企业常用服务器
数据库反射
网安警察网络技术
互联网高科技公司取名字
数据库处方
中华人民网络安全法建立
梦幻西游可转服务器是什么意思
软件开发的社会实践
登录网页服务器