2011-01-07 25 views
1

如何使用Java预处理器来确定我正在编译的操作系统?Java预处理器检查操作系统

+12

呃,Java预处理器是什么? – 2011-01-07 02:31:05

+0

@James:[spp](http://hg.openjdk.java.net/jdk6/jdk6/jdk/file/tip/make/tools/src/build/tools/spp/Spp.java),当然! ;-) – 2011-12-01 22:56:28

回答

1

没有Java预处理器,也没有条件编译的能力。

有建在其中编译允许有一定的条件是假,以促进消除调试代码删除条件块一个非常原始的调试功能 - 但如果规范需要我不记得允许从编译的类中删除代码。

static final boolean DEBUG=false; 


... 


if(Debugging.DEBUG) { 
    // some code which the compile may (or must?) eliminate 
    } 

如果您要检测的O/S在运行和在不同的平台做不同的事情,有一些在每艘在System.getProperties()记录JVM所需的系统性能。请参阅JavaDoc,相对于它的安装位置或网络位置:

api/java/lang/System.html#getProperties()