讲的太好了!!!————————Idea中的VM Options、Program Arguments、Environment Variable全解析

news2024/9/20 14:42:08

在这里插入图片描述

参数使用方式示例代码获取方式
VM Options必须以 -D 、 -X 、 -XX 开头,每个参数用空格隔开 ,使用最多的就是 -Dkey=value-Dvm.key=VmKey -Dvm.key2=VmKey2String key = System.getProperty(“vm.key”);
Program Arguments为我们传入main方法的字符串数组args[],用 空格 隔开 它通常以 -- 开头–spring.profiles.active=dev3main(String[] args)
Environment Variable其优先级低于 VM options ,即如果VM options 有一个变量和 Environment variable中的变量的key相同,则以VM options 中为准, 以 分号 分割多个env.key=env_james;server.servlet.context-path=/test;server.port=8080String envKey = System.getenv(“env.key”);

测试

在这里插入图片描述

@SpringBootApplication
public class SpringbootDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootDemoApplication.class, args);
        System.out.println("***************args***************");
        //打印传进来的 program arguments
        for (String arg : args) {
            System.out.println(arg);
        }
        System.out.println("***************System.getProperties***************");
        //获取java相关的环境变量
        String key = System.getProperty("vm.key");
        System.out.println("System.getProperties(vm.key):=======>" + key);
        Properties properties = System.getProperties();
        System.out.println("System.getProperties():=======>" + properties);
        System.out.println("***************System.getenv***************");
        //获取运行jvm的平台相关环境变量
        Map<String, String> env = System.getenv();
        System.out.println("System.getenv():----->" + env);
        String envKey = System.getenv("env.key");
        System.out.println("System.getenv(env.key)=======>" + envKey);
    }
}

结果:

***************args***************
p.key=Program_Key
p.name=ProgramName
p.age=18
***************System.getProperties***************
System.getProperties(vm.key):=======>VmKey
System.getProperties():=======>{sun.desktop=windows, awt.toolkit=sun.awt.windows.WToolkit, java.specification.version=11, sun.cpu.isalist=amd64, sun.jnu.encoding=GBK, java.vm.vendor=Amazon.com Inc., sun.arch.data.model=64, user.variant=, java.vendor.url=https://aws.amazon.com/corretto/, catalina.useNaming=false, user.timezone=Asia/Shanghai, os.name=Windows 10, java.vm.specification.version=11, sun.java.launcher=SUN_STANDARD, user.country=CN, spring.application.admin.enabled=true, sun.java.command=com.james.springbootdemo.SpringbootDemoApplication p.key=Program_Key p.name=ProgramName p.age=18, com.sun.management.jmxremote=, jdk.debug=release, sun.cpu.endian=little, spring.liveBeansView.mbeanDomain=, user.home=C:\Users\Andy, user.language=zh, java.specification.vendor=Oracle Corporation, java.version.date=2020-10-20, java.home=D:\jdk\jdk11.0.9_11, file.separator=\, spring.output.ansi.enabled=always, java.vm.compressedOopsMode=Zero based, line.separator=
, java.specification.name=Java Platform API Specification, java.vm.specification.vendor=Oracle Corporation, FILE_LOG_CHARSET=UTF-8, java.awt.graphicsenv=sun.awt.Win32GraphicsEnvironment, java.awt.headless=true, user.script=, sun.management.compiler=HotSpot 64-Bit Tiered Compilers, java.runtime.version=11.0.9+11-LTS, user.name=James, path.separator=;, os.version=10.0, java.runtime.name=OpenJDK Runtime Environment, file.encoding=UTF-8, spring.beaninfo.ignore=true, java.vm.name=OpenJDK 64-Bit Server VM, vm.key=VmKey, java.vendor.version=Corretto-11.0.9.11.2, java.version=11.0.9, os.arch=amd64, java.vm.specification.name=Java Virtual Machine Specification, PID=15712, java.awt.printerjob=sun.awt.windows.WPrinterJob, sun.os.patch.level=, CONSOLE_LOG_CHARSET=UTF-8, java.vm.info=mixed mode, java.vendor=Amazon.com Inc., java.vm.version=11.0.9+11-LTS, java.rmi.server.randomIDs=true, sun.io.unicode.encoding=UnicodeLittle, java.class.version=55.0}
***************System.getenv***************
System.getenv():----->{PROCESSOR_LEVEL=6, SESSIONNAME=Console, ALLUSERSPROFILE=C:\ProgramData, PROCESSOR_ARCHITECTURE=AMD64, CLASSPATH=.;D:\jdk\jdk11.0.9_11\lib;D:\jdk\jdk11.0.9_11\lib\tools.jar, WXDRIVE_START_ARGS=--wxdrive-setting=0 --disable-gpu --disable-software-rasterizer --enable-features=NetworkServiceInProcess, SystemRoot=C:\WINDOWS, NUMBER_OF_PROCESSORS=12}
System.getenv("env.key")=======>env_james

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/536568.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

10-03 单元化架构设计

设计原则 透明 对开发者透明 在做实现时&#xff0c;不依赖于单元划分和部署对组件透明 在组件运行时&#xff0c;不感知其承载单元对数据透明 数据库并不知道为哪个单元提供服务 业务可分片 系统业务复杂度足够高系统可以按照某一维度进行切分系统数据必须可以被区分 业务…

【网络】交换机基本原理与配置

目录 &#x1f341;交换机工作原理 &#x1f341;交换机接口的双工模式 &#x1f341;交换机命令行模式 &#x1f341;交换机常见命令 &#x1f9e7;帮助命令 &#x1f9e7;常用命令介绍 &#x1f341;交换机的基本配置 &#x1f9e7;配置接口的双工模式及速率 &#x1f990;博…

knife4j生产环境资源屏蔽

问题描述 knife4j是目前比较主流的自动API文档生成工具&#xff0c;在生产环境使用的过程中&#xff0c;我们一般会屏蔽或者去除Swagger的文档口径&#xff0c;防止接口信息泄露&#xff0c;保证系统安全。 但是最近在开发过程中使用knife4j-spring-boot-starter 3.0.2过程中&…

dolphinscheduler使用impala shell执行sql

目录 一、背景 二、方法 1.impala shell -f 文件名 2.impala shell -q sql 一、背景 因为dolphinscheduler工具sql组件不支持impala数据源&#xff0c;只能折衷方法通过shell来执行impala sql。 二、方法 1.impala shell -f 文件名 操作步骤&#xff1a; 1).【资源中心】…

受邀参加【第七届】中国客户服务节

在AI浪潮的推动下&#xff0c;客户服务“智能化”是企业高质量发展的重要途径之一&#xff0c;目前人工智能、大数据、云计算等技术已广泛应用于全行业的客户服务场景中&#xff0c;一个全面、完善、稳定的智能通讯服务平台可助力实现企业智能化应用转型和升级。 讯鸿网络作为国…

嘉立创EDA原理图封装画错了怎么办

摘要&#xff1a;本文以贴片电阻封装由1206修改为0805为例&#xff0c;介绍一下封装修改的一种方法。 1.问题描述 设计原理图的时候&#xff0c;误将封装设计成为1206了&#xff0c;现在想把它改为0805封装。 2.修改封装的步骤 首先在原理图中&#xff0c;修改对应的电阻器件…

Flutter 3.10 适配之单例 Window 弃用,一起来了解 View.of 和 PlatformDispatcher

Flutter 3.10 发布之后&#xff0c;大家可能注意到&#xff0c;在它的 release note 里提了一句&#xff1a; Window singleton 相关将被弃用&#xff0c;并且这个改动是为了支持未来多窗口的相关实现。 所以这是一个为了支持多窗口的相关改进&#xff0c;多窗口更多是在 PC 场…

统计学习方法:序贯概率比检验SPRT

Sequential Probability Ratio Test 应用&#xff1a;制造过程中的质量控制和医学试验中的异常检测 1.theory/principal 区别(vs固定样本检验)&#xff1a;在固定样本检验中&#xff0c;一定数量的观察结果被用来从两个或多个备选方案中选择一个假设。而SPRT则是一次检查一个…

AI“应用商店”来了!OpenAI首批70个ChatGPT Plugin最全梳理

OpenAI放出大招&#xff0c;本周将向所有ChatGPT Plus用户开放联网功能和众多插件本周将向所有ChatGPT Plus用户开放联网功能和众多插件&#xff0c;允许ChatGPT访问互联网并使用70个第三方插件。 本批第三方插件能够全方位覆盖衣食住行、社交、工作以及学习等日常所需&#x…

Electron自定义窗口

Electron标题栏隐藏和自定义 Electron应用自定义标题栏样式 标题栏样式允许隐藏浏览器窗口的大部分色彩&#xff0c;同时保持系统原生窗口控件完整无损&#xff0c;并可以在 BrowserWindow 的构造器中使用 titleBarStyle 选项来配置。 应用 hidden 标题栏样式的结果是隐藏标…

无线充+台灯专用PD诱骗芯片LDR6328S

近几年&#xff0c;日常生活中到处可以看到消费者使用支持Type-c接口的电子产品&#xff0c;如手机&#xff0c;笔记本&#xff0c;筋膜枪&#xff0c;蓝牙音箱等等。例如&#xff0c;像筋膜枪&#xff0c;蓝牙音箱&#xff0c;无人机&#xff0c;小风扇。 无线充台灯方案&…

librosa语音信号处理

librosa是一个非常强大的python语音信号处理的第三方库&#xff0c;本文参考的是librosa的官方文档&#xff0c;本文主要总结了一些重要&#xff0c;对我来说非常常用的功能。学会librosa后再也不用python去实现那些复杂的算法了&#xff0c;只需要一句语句就能轻松实现。 先总…

数字化时代,初创公司如何建设业财一体化

业财一体的关键是构建“业务活动跟财务活动之间的线上化链接”&#xff0c;财务可以通过线上支撑业务&#xff0c;业务活动数据可以通过线上高时效触达财务&#xff1b;从业务数据到财务数据&#xff0c;除了需要运营系统的支撑还需要会计引擎的实现&#xff0c;会计引擎将业务…

优秀的开发者,如何借助免费低代码平台实现数据采集?

采集和管理数据&#xff0c; 从未如此简单自然 一款免费的零代码产品‘敲敲云’&#xff0c;可以帮助每个人轻松创建表单&#xff0c;自由收集问卷样本、活动参与者名单、客户数据&#xff0c;原本几天的工作在 1 个小时内轻松搞定。 表单编辑器&#xff0c;让你和数据专家一样…

分享5款高效率软件,免费无广告

人类与99%的动物之间最大差别在于是否会运用工具&#xff0c;借助好的工具&#xff0c;能提升几倍的工作效率。 1.多设备键鼠共享——Synergy Synergy让你可以轻松地在办公桌上多台计算机之间共享你的鼠标和键盘。你只要将鼠标&#xff08;指针&#xff09;从一台计算机的屏幕…

用小程序技术服务数字城市

“十四五”规划大纲明确指出&#xff0c;要迎接数字时代&#xff0c;激活数据要素潜力&#xff0c;加快建设网络强国&#xff0c;加快建设数字经济、数码社会和数码政府&#xff0c;以数字化转型为变革的方式改变生产方式、生活方式和治理。 数字城市的技术内涵 数字城市的发…

轨道交通信号安全完整性等级(SIL)

轨道交通行业中&#xff0c;对于信号系统、车辆子系统等安全相关的系统有安全完整性&#xff08;SIL&#xff09;等级的要求&#xff0c;需要进行通用产品层安全评估和工程特定应用项目安全评估&#xff0c;已经形成了行业共识。对于初次了解SIL的人&#xff0c;在实际应用中存…

一文告诉你:为什么小程序更安全

随着数字时代的到来&#xff0c;数据不再是普通的符号和徽标&#xff0c;也不仅仅是普通的计算和统计工具。而安全问题也已经成为了一个非常重要的议题。今天就来探讨下小程序的安全架构&#xff0c;以了解小程序如何做到安全保障。 小程序的安全架构 先说说小程序自身的安全架…

【C++】YY带你手把手掌握C++系列 (P2)未完结

前言 大家好&#xff0c;这里是YY的带你手把手掌握C系列。大部分知识点都含有【特性介绍】【使用场景】【注意要点】【易混淆点】【代码演示】【画图演示】由于C体系之庞大&#xff0c;所以该系列以分P形式更新&#xff01;本篇博客为P2&#xff01; 大家可以通过本篇博客查找C…

【jmeter】同一线程组下多个请求分别执行不同次数

今天介绍下JMeter如何控制请求执行次数 主要有两种方式&#xff1a; 方式一&#xff1a;通过循环控制器控制每个请求的执行次数 例如&#xff1a;脚本执行规律是这样的&#xff0c;login-->customerPage-->search 我想执行一遍login&#xff0c;然后运行3遍customerP…