java compiler类_利用 JavaCompiler 编译 Java 类文件
1.[代码]DiagnosticCollectorCompile.java
import java.io.IOException;
import java.util.Arrays;
import javax.tools.DiagnosticCollector;
import javax.tools.JavaCompiler;
import javax.tools.JavaFileObject;
import javax.tools.StandardJavaFileManager;
import javax.tools.ToolProvider;
public class DiagnosticCollectorCompile {
public static void main(String args[]) throws IOException {
JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
DiagnosticCollector diagnostics = new DiagnosticCollector();
StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnostics, null, null);
Iterable extends JavaFileObject> compilationUnits = fileManager
.getJavaFileObjectsFromStrings(Arrays.asList("Foo.java"));
JavaCompiler.CompilationTask task = compiler.getTask(null, fileManager, diagnostics, null,
null, compilationUnits);
boolean success = task.call();
fileManager.close();
System.out.println("Success: " + success);
}
}
2.[代码]MyClass.java
class MyClass {
public static void main(String args[]) {
System.out.println("Hello, World");
}
}
java compiler类_利用 JavaCompiler 编译 Java 类文件相关推荐
- java invoke 泛型_利用Java反射机制和泛型,全自动解析json
有啦这个简直,太爽啦, 利用Java 反射机制,利用Class 就可以得到 类的 变量 Field[] fields=cls.getDeclaredFields(); 还可以通过类中 的方法名字 去 ...
- compiler java_使用JavaCompiler编译java源文件
从1.6版本的JDK开始,JDK提供了标准的包可以方便的调用JVM的编译器,可以方便的使用JVM的编译器来编译java源文件.JDK提供的调用接口是JavaCompiler类,该类在JDK的tools ...
- java 反射 单例类_利用反射机制破坏单例模式
简介 利用反射机制破坏了单例模式,这里以懒汉单例模式为例子进行操作. 之前利用反射也是改变了类中的private变量. 类中的private变量真的private么? 正常的单例模式的实现 这里采用了 ...
- java printerjob打印_利用PrinterJob类实现打印控制
无论采用哪种语言来开发应用系统,打印功能总是少不了的.为了节省Java程序开发人员的工作量,在Java语言中专门提供了一个PrinterJob类来帮助开发人员实现打印控制的功能. 本文将给大家介绍一下 ...
- java 清空控制台_利用原生库和JNI(Java原生接口)实现H2数据库漏洞利用
在H2数据库引擎中获取代码执行权限的技术早已是众所周知,但有个要求就是H2能够动态编译Java代码.而本文将向大家展示以前没有公开过的利用H2的方法,并且无需使用Java编译器,即通过原生库和JNI( ...
- java 编译器原理_作业5:Java编译原理
零.编译 1.编译器 (1)前端编译器:.java文件转变为.class文件Sun的javacEclipse JDT中的增量编译器(ECJ) (2)后端编译器:.class文件转变为机器码HotSpo ...
- winsock使用java编写_利用Socket进行Java网络编程(一)
利用Socket进行Java网络编程(一) 考试吧(Exam8.com) 2003-03-04 08:00:00 评论(0)条 作者: 郗旻 Socket是网络上运行的两个程序间双向通讯的一端,它既可 ...
- java 虚拟机 初始化_【深入理解Java虚拟机】类的初始化过程
类的初始化过程 类的加载过程.png 加载 将 Class 文件以二进制的形式加载到内存中 验证 校验 Class 文件是否安全,是否被正确的修改等 准备 为类变量申请内存,设置默认值,(初始化变量的 ...
- java实现浏览器_利用Java实现网页浏览器
使用VC,VB或者C#的开发者们对于在程序里面嵌入一个网页来说,那真是小事一桩.但是在JAVA里面,却几乎是不可能实现的任务. JEditorPane虽然说可以打开网页,但是它那解析速度以及解析质量, ...
最新文章
- Nginx使用http_accesskey_module防盗链,告别referer,告别伪装
- python3 检测端口是否开放
- linux c 通过套接字获取本地远程地址信息 getsockname getpeername 简介
- 评估指标:ROC,AUC,Precision、Recall、F1-score
- NYOJ 题目528 找球号(三)
- Linux基础命令---get获取ftp文件
- 通过简单的Spring方面摆脱null参数
- suse系统_据传 SUSE 将进行 IPO,高达 60 亿美元 | 新闻拍一拍
- 【转】Objective-C 属性特性(assign , retain , copy , readonly , readwrite , atomic , nonatomic)...
- 计算机电子表格的相关试题,(统考计算机模拟练习试题及答案电子表格.doc
- 如何在centos中找到安装mysql_如何在CentOS 7上安装MySQL
- Mysql 脚本兼容性测试_MySQL 测试小脚本〔案例〕
- 软件工程-团队作业3
- hihoCoder - 1079 - 离散化 (线段树 + 离散化)
- pip install transformers
- wgs84坐标系拾取工具_COORD坐标转换
- uniapp ios打包上架
- centos7 安装 K8S 及启动 POD问题
- Autosar Configuration(五) Security之Csm配置
- 语法制导翻译和中间代码生成
热门文章
- linux中用zip压缩文件,详解Linux中zip压缩和unzip解压缩命令及使用详解
- 莪的拽、像省田各号①样没尽頭队——软件需求规格说明书
- 改变边框线条与背景重叠的布局
- SwitchyOmega使用
- EC-PCA: 利润中心会计配置
- EC-PCA: 利润中心出具报表编制流程 - KE5Z / S_ALR_87013326
- 算法的时间复杂度(大O表示法)
- php接口链接浏览器打开很快php很慢,php不管curl还是file_get_contents请求接口都很慢,但直接在浏览器里访问就很快,这是说明情况?...
- Unnamed System Edition v4.0
- SAN和NAS的区别