1 Intellij IDEA 修改JDK版本

第1步:配置JDK环境变量

装好JDK之后,要添加一个环境变量:JAVA_HOME

第2步:修改Idea配置

由Maven决定的版本

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<!-- <version>3.5.1</version> -->
<!-- 指定maven编译的jdk版本。对于JDK8,写成8或者1.8都可以 -->
<configuration>
<source>8</source>
<target>8</target>
</configuration>
</plugin>
</plugins>
</build>

这个Maven设置会自动修改如下2个配置:

1.IDEA中编译工具的JDK版本
File=> Setting=> Build,Execution,Deployment=>
Complier=> Java Compiler=> Per-module bytecode version=> Target bytecode version 2.IDEA中模块的JDK版本
File=> Project Structure=> Project Settings=>
Modules=> Modules=> Sources=> Language level

补充:借助IDEA软件辅助设置的JDK版本流程

设置构建工具(Maven/Gradle)的JDK版本

File=> Setting=> Build,Execution,Deployment=>
Build Tools=>
Maven=>
importing=> JDK for importer
Runner=> JRE
Gradle=>
Gradle JVM

设置平台的JDK

File=> Project Structure=> Platform Settings=> SDKs

设置【项目】和【模块】的JDK版本

方法1

File=> Project Structure=> Project Settings=>
Project=> Project SDK
Modules=> Dependencies=> Module SDK

方法2

Settings -> ... -> Java Compiler -> Per-Module bytecode version(为每个工程模块设置JDK版本)

设置指定Application/JUnit/main方法类的运行时JDK版本

Run=> Edit Configurations=> Run/Debug Configurations
若应用为 SpringBoot:Configuration=> Environment=> JRE=> 选择正确的JRE
若应用为 Application:Build and run=> 选择正确的JDK
若应用为 JUnit : Run => Configuration => 选择正确的JDK

补充:通过 Maven settings 设置JDK版本

未亲测

<!-- 让 idea 的 maven 项目 pom.xml文件变成jdk1.8的配置 -->
<profile>
<id>jdk-1.8</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>

2 Java启动参数-D

java程序启动参数 -D是用来做什么的呢?去查询了一下官方解释:

Set a system property value. If value is a string that contains spaces, you must enclose the string in double quotes:

java -Dfoo="some string" SomeClass

也就是说-D是用来在启动一个java程序时设置系统属性值的。如果该值是一个字符串且包含空格,那么需要包在一对双引号中。

何为系统属性值呢?也就是在System类中通过System.getProperties()得到的一串系统属性。

下面我们来写个测试方法就知道了!

/**
* @author lmfeng
* @date 2018/05/30
*/
public class SystemProperty { public static void main(String[] args){
System.out.print(System.getProperty("dubbo.token"));
}
}

在运行改程序时加上JVM参数-Ddubbo.token="666" 或者 -Ddubbo.token=666,那么运行之后你可以看到控制台输出了666!

一点值得注意的是,需要设置的是JVM参数而不是program参数,注意看下图

demo1

demo2


public class SystemTest {
private static final Logger logger = LoggerFactory.getLogger(SystemTest.class);
@Test
public void getPropertiesTest(){
Properties properties = System.getProperties();
properties.entrySet().forEach(entry -> {
logger.warn(entry.getKey() + " : " + entry.getValue());
});
}
}

X 参考文献

[Java SE/JDK]Intellij IDEA中设置JDK版本的更多相关文章

  1. 在MyEclipse中设置jdk

    在MyEclipse中设置jdk的三处地方:1 选中项目右键菜单properties -->java Compiler 2 windows菜单中Preferences-->myeclips ...

  2. Windows中的JDK和Linux中的JDK是否相同

    前言 在面试中,被问到了一个问题: Windows中的JDK和Linux中的JDK是否相同? 其实,以上这个问题是一个子问题.原本的问题是:如何理解Java的跨平台机制.由于原问题显得有些宽泛,因此延 ...

  3. IntelliJ IDEA 中设置左菜单字体, 编辑器字体和控制台的字体

    IntelliJ IDEA 中设置左菜单字体大小 File-Settings,然后选择appearance,下图右侧红色边框中的内容即设置菜单的字体和大小 ​ IntelliJ IDEA 中设置当前编 ...

  4. Eclipse中设置JDK、${user}变量

    为eclipse设置jdk方法: 两个方法: 1.设置PATH路径-eclipse自动会查找! 2.在快捷方式中加上参数:-VM java虚拟机路径 Eclipse中设置${user}变量 在Ecli ...

  5. spark (java API) 在Intellij IDEA中开发并运行

    概述:Spark 程序开发,调试和运行,intellij idea开发Spark java程序. 分两部分,第一部分基于intellij idea开发Spark实例程序并在intellij IDEA中 ...

  6. 如何在Apache HttpClient中设置TLS版本

    1.简介 Apache HttpClient是一个底层.轻量级的客户端HTTP库,用于与HTTP服务器进行通信. 在本教程中,我们将学习如何在使用HttpClient时配置支持的传输层安全(TLS)版 ...

  7. [JAVA]在linux中设置JDK环境,ZendStudio,Eclipse

    1.准备JDK安装包 下载地址: http://www.oracle.com/technetwork/java/javase/downloads/index.html 下载对应平台的tar.gz格式压 ...

  8. Eclipse中设置JDK内存方式

    (1) 打开Eclipse,双击Serveers进入到servers编辑画面 (2) 点击 Open launch configuration 选项 (3) 选项中找到Arguments 的选项卡(t ...

  9. 【Intellij Idea】设置JDK

    1,File-->Project Structure 说明:可以设置整个工程的JDK,也设置每个modules的JDK,但是一般整个工程的JDK. 2,或者通过快捷键:ctrl+alt+shif ...

  10. 【Intellij IDEA】设置 jdk 版本

    File -> Project Structure... -> Project,如图所示:

随机推荐

  1. node后台项目所需中间件梳理

    0.nodemon 全局工具,监听项目文件变动,并自动重启项目 一.node内置模块 1.fs fs.readFile()  读取指定文件中的内容fs.writeFile()  向指定的文件中写入内容 ...

  2. SQL五十题记录 1-2

    前言: 创建以下四张表:①:课程表 ②:成绩表 ③:学生表 ④:教师表 1.查询课程编号为""01""的课程比"02"的课程成绩高的所有学生 ...

  3. Verilog 变量声明与数据类型二

    Verilog 变量声明与数据类型二 上节介绍了wire,reg数据类型及其用法,并对变量定义中的向量的定义及使用做了说明.本节主要介绍其它几种类型.常用的有如下几种:整数integer,实数 rea ...

  4. MySQL的卸载与安装

    卸载 1.右键点击我的电脑 -->服务-->停掉MySQL的服务 2.控制面板卸载MySQL 3.删除隐藏文件夹 C:\ProgramData下的MySQL文件夹 4.删除MySQL文件夹 ...

  5. 在虚拟机上安装CentOS6.5(minimal)

    在虚拟机上安装CentOS6.5(minimal) 2017年04月04日 09:40:38 kongmd 阅读数:2171   1.安装CentOS6.5 1.首先下载VMware ,和CentOS ...

  6. ASP.NET WEBAPI 获取微信ticket

    public static string GetTicket(string AccessToken) { //类型 string Type = "jsapi"; string st ...

  7. 如何让charles无论怎么请求都返回一个结果

    1. map Local         将匹配的url映射到本地文件.这个需要首先将url右键,save Response,将原有报文保存到本地,然后映射到该文件,修改该文件即可,直接自己写费事2. ...

  8. CH573 CH582 CH579外设ADC例程讲解

    在adc的例程中共有六种AD测量,1.温度测量,2.单通道测量,3.DMA单通道测量,4.差分通道测量,5.触摸按键测量,6.中断方式单通道测量,接下来我们逐一描述. 粗调:粗调使得用0db测量VIN ...

  9. 从XXE漏洞修复引起Not supported: http://javax.xml.XMLConstants/property/accessExternalDTD说到SPI机制

    引子  在使用Fortify扫描时代码报XML External Entity Injection,此漏洞为xml实体注入漏洞,XXE攻击可利用在处理时动态构建文档的 XML 功能.修复方案也包含了增 ...

  10. Java学习笔记-封装Java Util包Base64方法

    懒人菜鸟入门Java系列-习惯性封装常用方法,方便开发过程中调用   注释: Java版本-1.8 1 * @Author wuwenchao 2 * @Version 1.0.0 3 * @Date ...