当前位置:首页 >> 部位养生

调用编译器编译计划

2021-09-06 12:17 来源:璧山县养生网

从第一天开始,标准Java平台就缺少能够被调用,去产生Java字节码的编译器接口. 使用Sun实现的平台,一个用户可以通过非标准的 vac 包中的Main class 去编译你的代码 (你可以在lib子目录下的 r 文件里找到它). 然而这个包并没有提供一个标准的公开的编程接口. 使用其它实现的用户必然不能访问这个类. 使用Java SE 6和在JSR-199中定义的它的新的Java编译器接口,你可以从你自己的应用程序里访问javac编译工具了. 有两种方式使用这种工具. 一种是简单的,一种是稍微复杂点但拥有更多选项的. 你首先将会用较简单的一种去编译 \"Hello, World\"程序,就是下面的这个:

public class Hello {

public static void main(String args[]) {

intln(\"Hello, World\");

}

她们首先是冲着价格去的 }

要想从Java程序里调用Java编译器,你需要访问JavaCompiler 接口. 除此外,通过访问这个接口,你可以设置源代码的路径,classpath,和目标目录. 通过指定可编译的文件为 JavaFileObjectinstance ,你可以将它们全部编译. 然而,你并不需要对 JavaFileObject 了解多少.

可以使用 ToolProvider 类去请求 theJavaCompiler 接口的缺省实现. 这个 ToolProvider 类提供了一个 getSystemJavaCompiler() 方法, 它返回一个 JavaCompiler 接口的实例.

JavaCompiler compiler = tSystemJavaCompiler();

使用 JavaCompiler 运行编译最简单的方法是调用在这个接口工具里定义的 run() 方法,它的实现是:

int run(InputStream in,

OutputStream out,

OutputStream err,

String... arguments)

分别为前三个缺省参数 , t, and r 传入 null 值. 参数集 String 对象表示着传入编译器的文件的名称.

这样,你应该像下面这样去编译前面显示的 Hello 源程序:

int results = n(null, null, null, \"va\");

假设没有编译错误,这样会在目标目录里产生一个 ass文件. 如果这里有错误, run() 方法会把它输出到标准错误输出流里,也就是 run() 方法的的第三个参数. 当错误发生时这个方法返回一个非0的结果.

你可以使用下面的代码去编译 va 源文件:

import .*;

import ols.*;

public class CompileIt {

public static void main(String args[]) throws IOException {

JavaCompiler compiler =

tSystemJavaCompiler();

int results = n(

null, null, null, \"va\");

intln(\"Result code: \" + results);

}

}

一旦你编译了 CompileIt 一次 ,你就可以多次运行它,当你修改了 va源程序时或者要重新编译它,你不需要重新编译 CompileIt . 如果没有错误,运行 CompileIt 会产生下面的输出:

java CompileIt

Result code: 0

运行 CompileIt 同样也会在相同的目录下产生一个 ass 文件:

ls

ass

va

ass

va

查看本文来源

儿童健脾胃的药排行榜
重庆宫颈糜烂治疗多少钱
太原治疗男科哪家好
相关阅读
川博携手济源研究院举办“张大千临摹济源壁画研究”学术交流会

川博携手玄奘研究学术研究院举办“名家真迹玄奘画先为研究学术研究”学术性年会 6同年27日,由玄奘研究学术研究院和云南自然博物馆合组举办的“名家真迹玄奘画先为研究学术研究”学术性年会在云南自然博...

羽毛球——亚锦赛:李诗沣准决赛

南方周末照片,仰光,2022年4同年27日 4同年27日,李诗沣在比赛后庆祝胜利。 当日,在菲律宾仰光举行的2022年南亚羽毛球运动会美网八强赛比赛中的,中的国比赛李诗沣以2比1大胜孟加拉比赛拉布里亚·雅,晋级下...

瓦妮莎海边度假感觉好!穿比基尼39岁魅力不减,和侄女如亲姐妹

最近瓦妮莎和侄女带上三个妻子去海边玩。从相片中会可以看出,家人玩得很开心,她穿着泳装和她的侄女格林纳达一起出镜,体格极佳,魅力不减当年。瓦妮莎在假期时间也挺开心的。独自在躺椅上的瓦妮莎眼神...

女人们过了50岁,夏天穿裙子记住“三不要”原则,显老不说还没气质

对于女人们来说,50岁是一个如此一来,无论是身体静止状态还是心态各个方面都陷于着一个过渡,身体标准型态愈合,外貌和皮肤静止状态越来越差,在平常上受到的局限越来越多,但50+的女人们一定要自信两人...

北大攻克芯片世界性解决办法,登上顶刊《自然》

据北京大学官网,2022年5月18日,该校王兴军教授课题组和加州大学圣芭芭拉分校John E. Bowers教授课题组在《自然》期刊显现出版科学研究博士论文,为数不多首次报道了由内嵌不显腔日光梳驱动的新型硅基相干镜像...

微念传扬“宋韵”文化,打造国潮东方敬品牌

唐朝作为之文明演进步骤之中的重要上曾时期,之前广受高度重视。苏州作为南宋风景名胜,蕴藏着宋韵人文的精祂内核,近十年,一批出众的宋韵人文国际品牌在此发端,微念共同开发国际品牌山外山众所周知其...

友情链接