Why does Java use -D to indicate system properties?

后端 未结 2 942
野性不改
野性不改 2021-01-04 09:28

Why is the flag that indicates a System property in Java -D? Surely there is some semantics to this letter choice, but I can\'t guess what it is.

相关标签:
2条回答
  • 2021-01-04 10:17

    "defines" properties. Properties aren't arguments, so you'd need a special identifier anyway.

    0 讨论(0)
  • 2021-01-04 10:21

    It is short for setting a system define.

    "define" debug to yes

    -Ddebug=yes
    

    There is some historical context, as other compilers use similar flags. For example, gcc uses -D to set a preprocessor define.

    gcc -D debug=yes test.c
    

    will compile test.c with a preprocessing environment where the preprocessor variable debug is set to yes.

    0 讨论(0)
提交回复
热议问题