首页 > 其他分享 >IDEA内设置启动参数和环境变量

IDEA内设置启动参数和环境变量

时间:2022-10-11 17:57:27浏览次数:77  
标签:JVM Survivor IDEA XX 参数 设置 环境变量 年轻

1. 点击Edit Configuration

在这里插入图片描述

2、设置页面

2.1、属性信息

# VM Arguments 是设置的虚拟机的属性
# VM options
# 环境变量参数  非虚拟机参数需要指定-D参数
-server -XX:MetaspaceSize=512M -XX:MaxMetaspaceSize=1024m -Dfile.encoding=UTF-8
# Program arguments的值作为args[] 的参数传入的
# Environment variable 环境变量  这里不需要-D 参数
-D 系统属性
-X* jvm参数
# 两个横杠是springboot参数
--server.port=8088
# VM options 优先级 高于  Environment variable

2.2、参数说明

  • -Xms768m:设置JVM初始堆内存为768m。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。
  • -Xmx768m:设置JVM最大堆内存为768m。
  • -Xss128k:设置每个线程的栈大小。JDK5.0以后每个线程栈大小为1M,之前每个线程栈大小为256K。应当根据应用的线程所需内存大小进行调整。在相同物理内存下,减小这个值能生成更多的线程。但是操作系统对一个进程内的线程数还是有限制的,不能无限生成,经验值在3000~5000左右。需要注意的是:当这个值被设置的较大(例如>2MB)时将会在很大程度上降低系统的性能。
  • -Xmn2g:设置年轻代大小为2G。在整个堆内存大小确定的情况下,增大年轻代将会减小年老代,反之亦然。此值关系到JVM垃圾回收,对系统性能影响较大,官方推荐配置为整个堆大小的3/8。
  • -XX:NewSize=1024m:设置年轻代初始值为1024M。
  • -XX:MaxNewSize=1024m:设置年轻代最大值为1024M。
  • -XX:PermSize=256m:设置持久代初始值为256M。
  • -XX:MaxPermSize=256m:设置持久代最大值为256M。
  • -XX:NewRatio=4:设置年轻代(包括1个Eden和2个Survivor区)与年老代的比值。表示年轻代比年老代为1:4。
  • -XX:SurvivorRatio=4:设置年轻代中Eden区与Survivor区的比值。表示2个Survivor区(JVM堆内存年轻代中默认有2个大小相等的Survivor区)与1个Eden区的比值为2:4,即1个Survivor区占整个年轻代大小的1/6。
  • -XX:MaxTenuringThreshold=7:表示一个对象如果在Survivor区(救助空间)移动了7次还没有被垃圾回收就进入年老代。如果设置为0的话,则年轻代对象不经过Survivor区,直接进入年老代,对于需要大量常驻内存的应用,这样做可以提高效率。如果将此值设置为一个较大值,则年轻代对象会在Survivor区进行多次复制,这样可以增加对象在年轻代存活时间,增加对象在年轻代被垃圾回收的概率,减少Full GC的频率,这样做可以在某种程度上提高服务稳定性。
  • 非标准参数(-X),默认JVM实现这些参数的功能,但是并不保证所有JVM实现都满足,且不保证向后兼容;
  • 非稳定参数(-XX),此类参数各个JVM实现会有所不同,将来可能会不被支持,需要慎重使用;

2.3、优先级

Program arguments (--priority=program-agrs) > VM options (-Dpriority=vm-options) > Environment variable (priority=environment-variables)

3、配置信息

在这里插入图片描述

标签:JVM,Survivor,IDEA,XX,参数,设置,环境变量,年轻
From: https://www.cnblogs.com/edda/p/16780043.html

相关文章

  • Java参数校验
    基本步骤引入pom依赖书写需要校验的实体书写实体校验工具类编写测试代码引入pom依赖<!--参数校验--><!--start--><dependency><gr......
  • Aspect切面进行统一参数处理demo
    Aspect切面进行统一参数处理demo//导入implementation('org.springframework:spring-aspects:5.3.22')importcom.example.mytester.entity.ClassRoom;importcom......
  • RequestBodyAdvice和注解方式进行统一参数处理demo
    RequestBodyAdvice和注解方式进行统一参数处理demo@Target({ElementType.METHOD,ElementType.TYPE})@Retention(RetentionPolicy.RUNTIME)@Documentedpublic@inte......
  • NaiveBayes-参数求解
    knitr::opts_chunk$set(echo=TRUE)  朴素贝叶斯直观上倒是很容易理解,无非就是求后验概率最大化,但是损失函数、参数求解都是一知半解。本文以离散型朴素贝叶斯为例,做一些......
  • IDEA翻译插件(Translation)不能用啦?
    不知道大家最近有没有发现,Translation不能用了。因为Google那边的原因,这个插件的接口,访问不通了。我当时本来是打算寻找一些替代品,比如:有道。但是毕竟不是内置的,而且,我......
  • 【框架】IDEA创建SSM框架流程
    创建模块添加全新模块使用模板创建,选择webapp,之后next框架信息→next→finish框架完整化打开创建好的框架,再选择结构点击OK导入jar包以及对应坐标参考:<?x......
  • IDEA2020增加试用期-适用于30天试用期已过
    IDEA版本:2020.1.1情况描述:之前使用的试用期30天已经到期,现在被限制每次只能使用半小时搜了好几个破解教程,但都是需要在未开启试用的情况下破解;或者是将之前的IDEA卸载,再......
  • 用编译配置与环境变量实现开发时切换配置文件
    开发人员在开发代码的时候,经常会使用到Debug、Release、Development、Production等几个概念,虽然有些地方在功能上最终殊途同归,但是还是有非常大的区别。首先需要搞清楚,Deb......
  • Idea-->Maven-->Mybatis-->pom.xml配置
    <!--依赖列表--><dependencies><!--MyBatis依赖--><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</......
  • GCC中常用的优化的参数
    -pipe的作用:使用管道代替编译中临时文件,-pipe加速编译gcc-pipefoo.c-ofoo加速在将源代码变成可执行文件的过程中,需要经过许多中间步骤,包含预处理、编译、汇编和......