3

IntellJ IDEA内で、いくつかのJavaシステムプロパティが事前定義された「実行」構成が必要です(通常の簡単なタスク)。しかし、いくつかの理由で、いくつかのプロパティを空の文字列に設定する必要があります。これは、IDEAではそれほど簡単ではありません。

-Dmy-property=abd
-Dmy-property2=
-Dmy-property3=afd

これを「システムプロパティ」入力に入力すると、次のように変換されます。

-Dmy-property=abd
-Dmy-property2=-Dmy-property3=afd

IDEAは「未使用の」空白を削除しました。これは望ましくありません。現在、これを解決するには、空のプロパティをリストの最後に移動する必要があります。emtpyプロパティ値を入力する他の方法はありますか?

4

1 に答える 1

7

問題があるとは思いません。

私は小さなテストプログラムを作成しましたが、プロパティが変換されてもうまく機能します。

package com.stackoverflow;

/**
 * @author maba, 2012-10-24
 */
public class Main {
    public static void main(String[] args) {
        String property = System.getProperty("my-property");
        System.out.println("property = " + property);
        String property2 = System.getProperty("my-property2");
        System.out.println("property2 = " + property2);
        String property3 = System.getProperty("my-property3");
        System.out.println("property3 = " + property3);
    }
}

そして、IntelliJでは次のようになります。

ここに画像の説明を入力してください

実行すると、次の出力が得られます。

property = abc
property2 = 
property3 = afd

コマンドラインは次のようになるため、実行時にフォーマットされたシステムプロパティは正しくなります。

"C:\Program Files\Java\jdk1.6.0_33\bin\java" -Dmy-property=abc -Dmy-property2= -Dmy-property3=afd <lots of jars> com.stackoverflow.Main

つまり、-Dmy-property2=空の文字列になります。

于 2012-10-24T08:29:48.610 に答える