在 Eclipse 中 Maven project 的默认 JDK 版本是 1.5,

如果不在 settings.xml 或者 pom.xml 中显示的指出 JDK 版本,每次 右键项目--> Maven --> Update project 的时候 JDK 的版本都会变为 1.5。

解决办法:

1. 针对某个 Maven 项目,可以直接在 pom.xml 中指明 JDK 版本

2. 在 settings.xml 中指定 JDK 版本,这样所有的 Maven 都指定了 JDK 版本, 重启 Eclipse 后生效

在 pom.xml 中指明 JDK 版本

在项目的 pom.xml 中的 build 节点里使用 Maven 的编译插件来指定 JDK 版本。

项目中通常使用这种方法来指定,因为比较灵活,可以随意指定版本,修改后保存后即可生效。

<source> 标签用于指定源代码使用的开发版本

<target> 标签用于指定需要生成的目标 class 文件的编译版本

一般而言,target与source是保持一致的,但是,有时候为了让程序员能在其他的JDK中运行,会存在target不同于source的情况

<encoding> 标签用于指定编码方式,由于windows默认使用GBK编码,而Java项目多采用UTF-8编码,指定编码可以防止中文乱

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

修改 settings.xml 文件  (需要重启 Eclipse 才能生效)

使用这种方法的优势是所有 Maven 项目都会按照这个 JDK 版本来编译,如果 pom.xml 中又指定了JDK版本,则以 pom.xml 中的为准。

既可以修改 maven 安装目录下的 conf/settings.xml 文件,也可以修改用户目录下的 .m2/settings.xml 文件

在 <profiles> 下新建 <profile>

<settings>
...
<profiles>
...
<profile>
<id>jdk-10</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>10</jdk>
</activation>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>10</maven.compiler.source>
<maven.compiler.target>10</maven.compiler.target>
<maven.compiler.compilerVersion>10</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
</settings>

Eclipse 中 Maven 项目默认JDK版本为1.5 的解决方法的更多相关文章

  1. 修改Maven项目默认JDK版本

    问题: 1.创建maven项目的时候,jdk版本是1.5版本,而自己安装的是1.7或者1.8版本. 2.每次右键项目名-maven->update project 时候,项目jdk版本变了,变回 ...

  2. Java修改maven的默认jdk版本为1.7

    Java修改maven的默认jdk版本 问题: 1.创建maven项目的时候,jdk版本是1.5版本,而自己安装的是1.7或者1.8版本. 2.每次右键项目名-maven->update pro ...

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

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

  4. eclipse中Maven项目jar问题

    eclipse中Maven项目jar包下载下来了,不然我们import是时候根本导入不进来,网上的方法都试过了,Maven仓库也清空过后重新下载过了,都解决不了. 后来发现虽然jar包是下载下来了,可 ...

  5. maven配置默认jdk版本

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

  6. eclipse中maven项目jar包不会自动下载解决办法

    Eclipse中maven从远程仓库中下载jar包有时会很慢,有些甚至进度停止不动,这个时候我们可能会终止当前下载,但是终止jar包下载后会出现一个问题,再次打开Eclipse时,你会发现提示你项目中 ...

  7. eclipse中maven项目failonmissingwebxml错误的修复(转)

    在使用eclipse创建maven项目的时候,有时候会出现这个问题: web.xml is missing and 'failOnMissingWebXml' is set to true我遇到这个问 ...

  8. eclipse中maven依赖的jar源码中文注释乱码解决

    通过maven下载源代码,在eclipse中浏览源代码时,发现中文注释为乱码的问题. eclipse默认编码造成的问题.可以通过以下方法解决: 1.修改Eclipse中文本文件的默认编码:window ...

  9. Maven使用笔记(二)Eclipse中maven项目添加依赖

    1.在Eclipse中创建Eclipse项目后如何添加jar包? 点击pom.xml文件.我们可以看到下面有7个标签. 各个标签的含义如下: Overview:显示maven项目的一些基本信息Depe ...

随机推荐

  1. 学习excel的使用技巧复制一列文本成新列去重

    学习excel的使用技巧复制一列文本成新列去重 其实比较简单的技巧  知道了就会  不知道就比较麻烦 直接复制到一列 找到 数据选项 删除重复项

  2. python-day3集合、文件读写、函数

    @集合运算 s.union(t) s | t 返回一个新的 set 包含 s 和 t 中的每一个元素 s.intersection(t) s & t 返回一个新的 set 包含 s 和 t 中 ...

  3. SpringMVC参数注解解释

    在Controller的开发中,经常会用到很多注解,下面解释一下关于形参常用注解的一些解释,他们主要是用来接收参数的. @ModelAttribute("vo", ObjectVo ...

  4. azkaban使用--邮件发送配置

    前置条件:你的服务器是可以连外网. 当任务是异步定时的,我们对于结果的感知往往没有手动跑脚本那么及时,但是如果任何一个任务运行失败可能都会引起一些列问题,在这个情况下消息通知就很重要了,azkaban ...

  5. Java好的的工具类:JsonUtils

    package com.nxhfzx.gdshopping.utils; import java.util.List; import com.fasterxml.jackson.core.JsonPr ...

  6. 开源小程序CMS网站, JeeWx-App-CMS 1.1 版本升级发布,持续更新!

    JeeWx-App-CMS开源小程序CMS网站,持续更新ing~ JeeWx-App-CMS 是jeewx开发的小程序网站开源项目,基于小程序wepy语言,具备cms网站的基本功能,能够打造简单易用的 ...

  7. C#调用C++的DLL 尝试写入受保护的内存

    原因:C#中的声明函数的参数类型与C++的函数的参数类型不一致,在参照C#与C++的参数类型对照表以后,修改相应参数类型,问题解决

  8. mysql安装,以及从csv插入数据

    1.mysql安装 用管理员身份打开cmd命令行工具,cd到解压文件的bin目录:    ・MySql的Windows服务安装: mysqld install 回车 ・生成无密码的root用户: my ...

  9. 安装和破解Navicat

    这里的是安装目录,要记住 额外热任务在桌面创建一个快捷方式 点击完成之后先不要打开运行Navicat.exe这个主程序,把PatchNavicat.exe复制到你刚刚我们安装的路径,,不是你安装包的路 ...

  10. javascript正则表达式分组捕获理解

    我们先来看一段js代码: var rquickExpr = /^(?:(<[\w\W]+>)[^>]*|#([\w-]*))$/; console.log(rquickExpr.ex ...