java运行时 -D参数

来源:百度知道 编辑:UC知道 时间:2024/05/30 10:00:37
命令行语句
java -Djava.rmi.server.codebase=http://127.0.0.1:8080/download/ v2ch5.Warehouse.WarehouseServer
是不是等效于
在WarehouseServer.java文件中加上如下语句:

Properties props = new Properties();
String fileName = "WarehouseServer.properties";
FileInputStream in = new FileInputStream(fileName);
props.load(in);

并在当前目录建立文件WarehouseServer.properties,内容如下:
java.rmi.server.codebase=http://127.0.0.1:8080/download/

再在命令行运行
java v2ch5.Warehouse.WarehouseServer

我这样试了一下好像不行,如果不想在运行时带-D参数,如何在java文件中加载系统属性

加载系统属性就是用System.getProperty()啊,-D是在运行时传参数的。如果的意思是运行时加载自定义参数,你说的那个方法就可以啊,props.getProperty("java.rmi.server.codebase")应该可以得到吧!

ghft

正确java Test -Dname3=whuang
错误java -Dname3=whuang Test
注意:-D 一定要在类名的前面。
key code:
String outputMode =System.getProperty("name3");
System.out.println("my name is : "+outputMode);
Properties props = new Properties(System.getProperties());
String outputMode = props.getProperty("name3");
System.out.println("my name is : "+outputMode);