Maven刷新后jdk变成jre
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相关推荐
- JDK与JRE及其在Eclipse中的使用
转载自:http://blog.csdn.net/gx1058742912/article/details/51033942 JDK与jRE的区别 JDK(java development kit): ...
- eclipse 修改maven项目的jdk版本
eclipse 修改maven项目的jdk版本 CreationTime--2018年6月8日10点29分 Author:Marydon 1.情景展示 jdk版本太低,如何修改 2.错误方式 第一步 ...
- Java 入门之1:浅谈Java的最基本概念及JDK、JRE、JVM之间的关系和区别
目录 前言: 一句话介绍Java语言的故事 一句话概括Java的特性和优势 两句话阐述JAVA_HOME环境变量和classpath环境变量的作用是什么 简述JDK.JRE.JVM之间的关系 Java ...
- Eclipse中JDK与JRE区别
目录(?)[-] JDK与jRE的区别 eclipse中的JDK与JRE JDK与jRE的区别 JDK(Java development kit):Java 开发工具,包括一系列java命令,如jav ...
- jdk、jre、jvm有什么区别?
简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境.SDK是Software Development Kit 一般指软件开发包,可以包括函数库.编译程序等. 如果你需要运行 ...
- jdk与jre的区别(转)
很多程序员已经干了一段时间java了依然不明白jdk与jre的区别. JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境 ...
- maven配置默认jdk版本
在maven的默认配置中,对于jdk的配置是1.4版本,那么创建/导入maven工程过程中,工程中未指定jdk版本. 对工程进行maven的update,就会出现工程依赖的JRE System Lib ...
- JDK和JRE的概念与区别
一.JDK(Java Development Kit):是Java语言的软件开发工具包(SDK).含编译器.调试器和其他工具. (1)JDK包含的基本组件包括: javac – 编译器,将源程序转成字 ...
- JVM,JDK,JRE和OpenJDK有什么区别?
本文翻译自:What is the difference between JVM, JDK, JRE & OpenJDK? What is the difference between JVM ...
- JDK和JRE的区别-zz
很多程序员已经干了一段时间java了依然不明白jdk与jre的区别. JDK就是Java Development Kit.简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境 ...
最新文章
- 活动报名 | MSRA卢帅:自动化代码审查过程的研究
- C#调用C/C++ DLL 参数传递和回调函数的总结
- 分布式缓存系统之Memcached
- 【通知】CCIE LAB北京考场9月1日起开放考试
- 【大会】技术决策背后的商业逻辑
- vba 提取 json某个值_利用VBA字典,提取两列数据的重复值
- 站内搜索——Lucene +盘古分词
- J2EE的13种核心技术简介
- php随机生成卡密,PHP随机生成不重复的8位卡号(数字)和卡密(字符串)
- Thinkpad E570/580可用的黑苹果EFI
- 十二生肖的相合、相冲、相刑、相害
- 橡胶支座抗压弹性模量计算公式_橡胶支座计算
- 江南大学c语言课程绩点评分,江南大学无锡医学院课程考核档案管理办法
- bios error 装系统acpi_WIN10重装系统提示错误ACPI?处理重装系统bios acpi错误
- Java中创建对象有哪几种方式,Java 中创建对象的4种方式--Java学习网
- 相机去畸变软件OCamCalib的使用方法
- 边云协同的优点_探析云边协同的九大应用场景
- 基于卷积神经网络(CNN)的图像识别 之 火焰识别
- 解决swap file .swp already exists 问题
- 计算机专业370,2018复旦计算机专硕初试370+经验贴(更新部分内容)