Java实现动态编译的两种方式
2015-08-16 21:16
330 查看
动态编译
Java6.0引入了动态编译机制动态编译的应用场景
可以做一个浏览器断编写java代码,上传到服务器编译和运行的在线评测系统。
服务器动态的加载某些类文件进行编译
动态编译的两种做法:
通过Runtime调用javac,启动新的进程去操作
Runtime run = Runtime.getRuntime(); Precess process = run.exec("javac -cp d:/myjava/ HelloWorld.java");
通过JavaCompiler动态编译
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); //如果编译成功返回值为0,返回非0值表示编译不成功 int result = compiler.run(null, null, null, "filename");
相关文章推荐
- Spring学习笔记-springMVC基于注解的控制器(基本概念)
- java对象引用和值引用,特殊的String!
- java遍历map的集中用法(执行效率)
- Spring---AOP简介
- java基础--高薪技术--JDK1.5新特性
- java中super关键字小结
- Java 对象
- Java多重循环算法问题:(九九乘法表、打印平行四边形、打印空心菱形、打印菱形、搬砖问题、斐波那契数列、猴子吃桃问题、回文数、1!+2!+...+20!)
- 自定义spring schema简化与canal集成
- JavaEE SSH集成框架(两) struts2 本地加载dtd文件,action组态
- java中IO流学习小结
- java 基础(环境变量、)
- JAVA IO操作关键点
- Java类的生命周期详解
- Spring用法快速入门
- Java:多重循环for、while、do-while(简单判断是否是四位整数、1-100累加,水仙花、最大公约数。最小公倍数、完数、输入任意数计算每位数之和、弹力球问题)
- Java内存分配全面浅析
- eclipse中的dynamic web project与Static Web Project 的区别
- Java中循环问题:for,while,do-while 各种练习(打印上三角、下三角、输出100以内的素数、水仙花、最大公约、最小公倍数、分解质因数、兔子问题)
- 浅析Spring事务传播行为和隔离级别