Eclipse添加jdk下的jre和jre的区别

来源:互联网 发布:新枫叶软件 编辑:程序博客网 时间:2024/04/28 20:16
Eclipse中的Installed JREs
Windows -> Preferences -> Java -> Installed JREs
 
Eclipse中可以添加JDK和JRE来DEBUG和RUN Applications , 但其中还是有点区别的
 
区别是: 使用JRE无法DEBUG JAVA API, 而选择JDK则可以
 
选择JRE DEBUG JAVA API时,Eclipse会报Unknown Source, 即使你已经可以查看JAVA API Source


测试代码...
import javax.tools.DiagnosticCollector;
import javax.tools.JavaCompiler;
import javax.tools.JavaFileObject;
import javax.tools.StandardJavaFileManager;
import javax.tools.ToolProvider;

public class Testmain {

    public static void main(String[] arg) {

        JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
        DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<JavaFileObject>();
        StandardJavaFileManager fm = compiler.getStandardFileManager(diagnostics, null, null);
        System.out.println(fm);
    }
}

运行此代码出现下面异常
        Exception in thread "main" java.lang.NullPointerException
        at Testmain.main(Testmain.java:60)


        进一步调试发现complier的值为null,但是查API发现JavaCopiler对象却是是这样得到的

                本机JRE home为C:/Program Files/Java/jre6。

                只要将JRE home改为jdk下面的jre问题就解决了。
0 0
原创粉丝点击