Java Preprocessor Check OS - PullRequest
       6

Java Preprocessor Check OS

1 голос
/ 07 января 2011

Как использовать препроцессоры Java, чтобы определить, в какой ОС я компилирую?

Ответы [ 2 ]

1 голос
/ 07 января 2011

Нет Java-препроцессора и нет возможности условно компилировать.

В него встроена очень примитивная функция отладки, благодаря которой компиляции разрешается удалять условные блоки с постоянным условием, которое является ложным для облегчения устранениякод отладки - но я не помню, если спецификация требует или позволяет код, который будет удален из скомпилированного класса.

static final boolean DEBUG=false;


...


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

Если вы хотитеобнаруживать O / S во время выполнения и выполнять разные действия на разных платформах, в каждой JVM требуется ряд системных свойств, которые описаны в System.getProperties().См. JavaDoc относительно его установки или сетевого расположения:

api/java/lang/System.html#getProperties()
1 голос
/ 07 января 2011

Попробуйте:

System.getProperty("os.name")

С Как программно определить операционную систему на Java?

Кстати, у Java нет препроцессора ... одиниз раздражающих вещей, которые я обнаружил.

...