idea向System.getenv()添加系统环境变量的操作

网友投稿 353 2023-01-05

idea向System.getenv()添加系统环境变量的操作

idea如何设置系统环境变量

背景

最近在接入阿里云的短信服务,在使用阿里云短信服务的SDK过程中想看看SDK中HttpUtil 中

public static String debugHttpRequest(HttpRequest request) {

if (isHttpDebug) {

StringBuilder debugString = new StringBuilder();

http:// String sysUrl = request.getSysUrl();

URL url = null;

try {

url = new URL(sysUrl);

debugString.append("> " + request.getSysMethod() + " " + url.getProtocoASKERMl().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"));

获取到了之前配置的环境变量,问题解决。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Spring Session的使用示例
下一篇:各种api接口网站源码大全(API源码)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~