Eclipse中自带的编译器和引入的JRE(JDK)的关系

目录

简单介绍:

A  为工作空间设置编译器版本 : 无用

B  为工作空间引入JRE:   

C 为不同项目选择不同的编译器版本 :  Project Facets和Java Compiler

D  为不同的项目选择不同的运行环境JRE

要让项目的运行环境版本要等于或高于项目的编译版本:

E 拓展问答

问:maven项目报编译器不匹配的错误该怎么搞

问:JDK和JRE的区别

问:操作系统配置jdk的环境变量有什么用?

问:jdk里的jre与外面jre的区别

问:jvm是对物理计算机的抽象模拟吗? 是也不是,看你从那个角度看。

问:maven的作用有哪些:

拓展:Eclipse的Project Facets属性

拓展:JDK中的开发工具到底有哪些呢:




简单介绍:

其实写这篇文章的出发点就是因为在Eclipse中用maven时,被各种jre、jdk搞得混乱,于是决定弄清楚。先简单的介绍一下:

Eclipse:是一款集成开发的IDE,可以开发,编译,调试,运行代码等;

JDK:java开发工具包==JRE+java开发工具,开发工具里的javac.exe能将.java文件编译成字节码文件;

JRE:java运行时环境,执行编译后的字节码文件;

Maven:一款项目管理工具;

Eclipse中其实内嵌了Java编译器,其编译器的作用等同于jdk中的javac.exe,所以eclipse其实只需要jre就可以编译&运行java文件(在eclipse中当你保存一个java类时,它就会自动编译这个java类,相当于在命令行中用了javac这个命令)。就像是启动Tomcat只需要jre,原因是Tomcat中已经包括了源代码编译器,不需要jdk中的javac来编译。

但如果你在eclipse中用了maven这样的工具,可能就无法编译了。因为maven默认使用jdk中的javac来编译项目的,而如果你的eclipse中某maven项目只指定了jre,就会出现无法编译的情况,所以需要在pom.xml里配置java编译器或jdk插件才行。

所以Installed JRE这里引入JRE才是最标准的做法(推荐),只是有些人习惯直接引入jdk当然也没关系,毕竟你以为是引入jdk,但人家eclispe却会帮你只引入JDK下JRE里的jar包,不信看图1-1:

所以eclipse中用了maven这样的工具,就无法使用eclipse自带编译器进行编译了。因为maven是默认使用JDK中的javac.exe编译器工具来编译的,它不会使用eclipse自带的编译器进行编译。所以maven项目的pom.xml里还要带上编译器或jdk插件,如块1-1所示。 

图 1-1

块 1-1

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>
    <dependencies>
........

Eclipse中有几处会用到jdk和jre的,下面列出几个具体讲解:这里以普通web项目举例:

A  为工作空间设置编译器版本 : 无用

 Window ->preferences->java->compiler。

Compiler compliance level是编译器遵从级别的意思,暂时这个设置没有发现有什么用处。因为我们都会针对单个项目再进行编译器版本设置的。

B  为工作空间引入JRE:   

Window->preferences->Java->Installed JREs 。

运行时能供选择的JRE,这里就是引入一下你电脑上的jre,具体项目使用什么版本编译还是需要你在项目build path那里配置哦。这里默认不默认勾选的没什么意义,反正我

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值