0

次のクラスがあるとします。

public class SpecifySystemPropertiesCommandLine {

    public static void main(String[] args) {
        String prop1 = System.getProperty("prop1", "defaultvalue");
        String prop2 = System.getProperty("prop2", "defaultvalue");

        System.out.println("prop1 = " + prop1);
        System.out.println("prop2 = " + prop2);
    }

}

以下が機能しないのはなぜですか。

$ java -jar sysprop.jar -Dprop1="i can haz?"
prop1 = defaultvalue
prop2 = defaultvalue

しかし、これは機能します:

$ java -Dprop1="i can haz?" -jar sysprop.jar 
prop1 = i can haz?
prop2 = defaultvalue
4

1 に答える 1

3

http://docs.oracle.com/javase/6/docs/technotes/tools/windows/java.htmlを参照してください。

jarファイル名の後のすべては、クラス/アプリのmainメソッドに渡される引数です。

-Dprop = valは、Javaプロセスに渡される引数です。

于 2013-01-27T03:29:30.890 に答える