idea向System.getenv()添加系统环境变量的操作
idea向System.getenv()添加系统环境变量的操作
idea如何设置系统环境变量
背景
最近在接入阿里云的短信服务,在使用阿里云短信服务的SDK过程中想看看SDK中HttpUtil 中
public static String debugHttpRequest(HttpRequest request) {
if (isHttpDebug) {
StringBuilder debugString = new StringBuilder();
String sysUrl = request.getSysUrl();
URL url = null;
try {
url = new URL(sysUrl);
debugString.append("> " + request.getSysMethod() + " " + url.getProtocol().toUpperCase() + "/1.1\n> ");
debugString.append("Host : " + url.getHost() + "\n> ");
} catch (MalformedURLException e) {
debugString.append("> " + request.getSysMethod() + " " + sysUrl + "\n> ");
debugString.append("Host : " + sysUrl + "\n> ");
}
Map requestHeaders = request.getSysHeaders();
for (Entry entry : requestHeaders.entrySet()) {
debugString.append(entry.getKey() + " : " + entry.getValue() + "\n> ");
}
debugString.append("Request URL : " + sysUrl + "\n> ");
if (isHttpContentDebug) {
try {
debugString.append("\n" + request.getHttpContentString());
} catch (ClientException e) {
debugString.append("\n" + "Can not parse response due to unsupported encoding : " + request
.getSysEncoding());
}
}
log.info("\n" + debugString);
return debugString.toString();
} else {
return null;
}
}
上述方法的debug信息,但是由于isHttpDebug是在静态代码块中通过读取系统环境变量判断的
static {
Boolean flag = "sdk".equalsIgnoreCase(System.getenv("DEBUG"));
isHttpDebug = flag;
isHttpContentDebug = flag;
}
所以来想办法如何设置这个DEBUG参数
读取系统环境变量
for (String s : System.getenv().keySet()) {
System.out.println(s+":"+System.getenv(s));
}
设置系统环境变量
至此,通过idea设置程序运行系统环境变量就完成了。可以通过System.getenv()来查看设置的系统环境变量。
mac上ide中无法获取环境变量的问题
工作环境:mac
IDE:eclipse or IntelliJ IDEA
工作中需要用环境变量来设置参数,然后在程序启动时发现之前在.bash_profile中配置的环境变量都读不到,命令行echo一下是生效的。
后来定位到原因是idea启动没有获取到环境变量。。我之前的启动方式是直接双击图标。
之后关闭ide,通过bash命令 open /Applications/xxx.app启动ide。
System.out.println(System.getenv("LOCAL_PROXY"));
获取到了之前配置的环境变量,问题解决。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持趣讯吧。
推荐阅读
-
idea快捷键一览表(Intellij IDEA main方法快捷键是什么)
IntellijIDEAmain方法快捷键是什么?键入sout,然后按tab键。提示:如果你不如果你不知道快捷键,你可以查看...
-
IDEA中怎么添加jar包
这篇文章给大家介绍IDEA中怎么添加jar包,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1.首先,打开In...
-
如何解决IDEA启动tomcat端口的问题
这篇文章主要介绍了如何解决IDEA启动tomcat端口的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后...
-
IntelliJ IDEA如何打开多个Maven的module且相互调用
小编给大家分享一下IntelliJIDEA如何打开多个Maven的module且相互调用,相信大部分人都还不怎么了解,因此分享这...
-
IDEA编译乱码Build(Output提示信息乱码)
IDEA编译乱码Build,Output提示信息乱码目录问题说明:IDEA编译的时候乱码,BuildOutput提示信息乱码�...
-
idea中怎么解决maven包冲突问题
idea中怎么解决maven包冲突问题,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望...
-
IntelliJ IDEA中怎么新建一个Java class项目
IntelliJIDEA中怎么新建一个Javaclass项目,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和...
-
怎么在IDEA中修改内存大小
怎么在IDEA中修改内存大小,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单...
-
idea中怎么导入ssm项目
这篇文章将为大家详细讲解有关idea中怎么导入ssm项目,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对...
-
MAC下基于maven使用IDEA走读TestNG源码解析
之前用Python执行程序都是pythonxxx.py,最近在使用Java技术栈的TestNG,于是想能够也用命令行实现…创建...
