有没有办法从.java文件中获取.class文件

有没有办法从.java文件中获取.class文件

问题描述:

我有一种方法返回一组.java文件,但我需要这些java文件的.class文件...有没有一种简单的方法做这个?有没有办法从.java文件中获取.class文件

下面是代码的部门我使用返回的.java文件

files = retrieveFiles.listFilesForFolder(folder); 
for(File currentFile: files){ 
    //for each file i need to get the .class file 
} 
+6

使用Java SDK将.java文件编译为字节码? – 2012-08-02 16:12:16

+0

难道你不能只检查文件名是以.class结尾吗? – nhahtdh 2012-08-02 16:12:43

+0

@nhahtdh:所有返回的文件都是.java文件,所以没有检查.class文件的点号 – flexinIT 2012-08-02 16:13:39

的Java SDK 6引入了编译器API列表。这允许从Java应用程序中编译Java代码。

延伸阅读:

+0

也看这里:http://stackoverflow.com/questions/ 10158423 /编译java文件从一个java程序的替代品,如果你使用Java 6以下。 – 2012-08-02 16:18:03

+0

我已经有我的程序编译java文件,所以我不需要知道如何做到这一点,而不是指向.class文件,我想知道是否可以以不同的方式获得.class文件,因为用户在测试之前不会编译该文件。 – flexinIT 2012-08-02 16:21:02

+0

请在*获取类文件*中说明。它正在编译还是正在搜索文件系统中的匹配类文件? – 2012-08-02 16:25:25

不知道如果你使用OS X或Windows,但在这两种情况下,你应该APLE使用哪个编译的.java javac命令文件并创建.class文件。

然后,它只是一个搞清楚如何在Java脚本,这取决于你的操作系统(无论是基于UNIX或没有)运行javac命令的事: http://www.linglom.com/2007/06/06/how-to-run-command-line-or-execute-external-application-from-java/

更多关于javac命令: http://docs.oracle.com/javase/1.4.2/docs/tooldocs/windows/javac.html