问题:idea java如何读取系统环境的变量值呢。或者说读取vm args里面的参数值呢。
读取vm,首先要添加一个 模板(有的idea 默认没有这个模板,一个小小的按钮,如下图 modify options),填写参数
上图是 Jar application 那个按钮
然后
String password = System.getProperty("password");
String password2 = System.getProperty("Daws.accessKeyId");
就可以获取了。
如果是系统变量,就是
System.getProperties()
这样debug 才发现获取到了值,是vm里面的参数。如果直接 args里面 或者 在java -jar 后面是 null
参考文章:https://blog.csdn.net/feiying0canglang/article/details/118807155
问题二:
java -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5555 -jar demo.jar
java -jar 带的参数,默认的文件路径在哪里呢。在target/classes下面
public static void main(String[] args) {
System.out.println("fmt");
System.out.println(args.length);
System.out.println(args[0]);
System.out.println(args[1]);
System.out.println(args[2]);
System.out.println(args[3]);
FileReader fileReader = new FileReader(args[3]);
System.out.println(fileReader);
String fileContent = fileReader.readString();
// 说明路径在target的class 路径下。
System.out.println(fileContent);
}
}
读取文件内容hutool包
<dependencies>
<dependency>
<groupId>cn.hutool</groupId>
<artifactId>hutool-all</artifactId>
<version>5.7.21</version>
</dependency>
</dependencies>