2012-10-24 121 views
3

我想在一些java系統屬性預定義(普通和簡單的任務)的情況下在IntellJ IDEA中有「運行」配置。但是一些原因,我需要設置一些屬性,以空字符串 - 這是不是在IDEA那麼容易:IDEA中系統屬性的空值運行/調試配置

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

,如果我進入這個在「系統屬性」輸入時,它會被轉換爲

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

IDEA刪除「未使用」的空格。這是不可取的。目前我只能通過將空的屬性移動到列表的末尾來解決這個問題。有沒有其他方法可以輸入emtpy屬性值?

回答

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如下:

enter image description here

當運行我會得到這樣的輸出:當您運行,因爲

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 

I.e. -Dmy-property2=將爲空字符串。

+0

謝謝你指出! – BegemoT

+0

雖然它仍然看起來令人困惑,但它的工作方式與預期的一樣,是的 – BegemoT

+2

如果您希望它看起來更好,可以將''「'作爲值添加以獲得空字符串:'-Dmy-property2 =」「'。 – maba

相關問題