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 回答