maven设置jdk有两种方法,setting.xml或pom.xml里面设置,pom里面设置也有两种。

setting.xml里面设置的话,是设置成全局变量,在setting.xml文件中的profiles元素下添加如下profile元素

<profile>  <id>jdk18</id>  <activation>  <activeByDefault>true</activeByDefault>  <jdk>1.8</jdk>  </activation>  <properties>  <maven.compiler.source>1.8</maven.compiler.source>  <maven.compiler.target>1.8</maven.compiler.target>  <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>  </properties>
</profile>

然后在各自项目的pom.xml里面设置的话,就是局部变量了。

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><source>1.8</source><target>1.8</target><encoding>UTF-8</encoding></configuration></plugin></plugins>
</build>

还有

    <properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><encoding>UTF-8</encoding><java.version>1.8</java.version><maven.compiler.source>1.8</maven.compiler.source><maven.compiler.target>1.8</maven.compiler.target></properties>

以上都可以指定jdk版本

但是还有一个问题就是,maven指定了jdk之后,他只能使用他指定的javase1.8,如果这时候jdk设置不对,就会出现这样的情况

使用的lib是jre版本,如果这时候使用maven进行打包之类的操作,就会提示

No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?

打开Window - Preferences - java - Installed JREs

发现里面使用的是jre,而不是jdk

这时候需要添加上jdk,并且切换成jdk

但是编译的时候依旧报错。

回头再看项目的java build path

发现上面的javaSE-1.8(jre1.8.0_131),里面使用的是jre而不是jdk

而且打开选项也没有jdk的选择。

这是因为一开始使用的是jre而不是jdk,导致默认的javaSE是使用的jre。

这里只需要删除 Installed JREs中的jre那条JREs就行了

转载于:https://www.cnblogs.com/mottledbamboo/p/6992018.html

Maven刷新后jdk变成jre相关推荐

  1. JDK与JRE及其在Eclipse中的使用

    转载自:http://blog.csdn.net/gx1058742912/article/details/51033942 JDK与jRE的区别 JDK(java development kit): ...

  2. eclipse 修改maven项目的jdk版本

    eclipse 修改maven项目的jdk版本 CreationTime--2018年6月8日10点29分 Author:Marydon 1.情景展示 jdk版本太低,如何修改 2.错误方式 第一步 ...

  3. Java 入门之1:浅谈Java的最基本概念及JDK、JRE、JVM之间的关系和区别

    目录 前言: 一句话介绍Java语言的故事 一句话概括Java的特性和优势 两句话阐述JAVA_HOME环境变量和classpath环境变量的作用是什么 简述JDK.JRE.JVM之间的关系 Java ...

  4. Eclipse中JDK与JRE区别

    目录(?)[-] JDK与jRE的区别 eclipse中的JDK与JRE JDK与jRE的区别 JDK(Java development kit):Java 开发工具,包括一系列java命令,如jav ...

  5. jdk、jre、jvm有什么区别?

    简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境.SDK是Software Development Kit 一般指软件开发包,可以包括函数库.编译程序等. 如果你需要运行 ...

  6. jdk与jre的区别(转)

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别. JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境 ...

  7. maven配置默认jdk版本

    在maven的默认配置中,对于jdk的配置是1.4版本,那么创建/导入maven工程过程中,工程中未指定jdk版本. 对工程进行maven的update,就会出现工程依赖的JRE System Lib ...

  8. JDK和JRE的概念与区别

    一.JDK(Java Development Kit):是Java语言的软件开发工具包(SDK).含编译器.调试器和其他工具. (1)JDK包含的基本组件包括: javac – 编译器,将源程序转成字 ...

  9. JVM,JDK,JRE和OpenJDK有什么区别?

    本文翻译自:What is the difference between JVM, JDK, JRE & OpenJDK? What is the difference between JVM ...

  10. JDK和JRE的区别-zz

    很多程序员已经干了一段时间java了依然不明白jdk与jre的区别. JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境 ...

最新文章

  1. 活动报名 | MSRA卢帅:自动化代码审查过程的研究
  2. C#调用C/C++ DLL 参数传递和回调函数的总结
  3. 分布式缓存系统之Memcached
  4. 【通知】CCIE LAB北京考场9月1日起开放考试
  5. 【大会】技术决策背后的商业逻辑
  6. vba 提取 json某个值_利用VBA字典,提取两列数据的重复值
  7. 站内搜索——Lucene +盘古分词
  8. J2EE的13种核心技术简介
  9. php随机生成卡密,PHP随机生成不重复的8位卡号(数字)和卡密(字符串)
  10. Thinkpad E570/580可用的黑苹果EFI
  11. 十二生肖的相合、相冲、相刑、相害
  12. 橡胶支座抗压弹性模量计算公式_橡胶支座计算
  13. 江南大学c语言课程绩点评分,江南大学无锡医学院课程考核档案管理办法
  14. bios error 装系统acpi_WIN10重装系统提示错误ACPI?处理重装系统bios acpi错误
  15. Java中创建对象有哪几种方式,Java 中创建对象的4种方式--Java学习网
  16. 相机去畸变软件OCamCalib的使用方法
  17. 边云协同的优点_探析云边协同的九大应用场景
  18. 基于卷积神经网络(CNN)的图像识别 之 火焰识别
  19. 解决swap file .swp already exists 问题
  20. 计算机专业370,2018复旦计算机专硕初试370+经验贴(更新部分内容)

热门文章

  1. ActiveMQ消息队列介绍(转)
  2. ssh架构之hibernate(二)进阶学习
  3. SQL 单表查询多个计算的值
  4. jquery focus() 手机端无效
  5. u-boot-2010.09移植(A)
  6. 1:A+B Problem
  7. 初步学习pg_control文件之十四
  8. css分类及其它技巧
  9. chromium笔记目录
  10. java day35【Bootstrap】