2015-02-16 2 views
2

Как установить возвращаемое значение приложения Java, запущенного через Eclipse Equinox? Он реализует IApplication. Я вижу, что метод start() имеет аргумент типа IApplicationContext, который предоставляет метод setResultValue(). Но это значение - это Object, а не Integer. Я искал в Интернете пример его использования, но не смог найти его.eclipse equinox: как установить возвращаемое значение?

Что произойдет, если наше приложение просто вызовет exit()?

В моем понимании, возвращаемое значение Java-приложения является либо аргументом exit(), если это вызвано, либо возвращаемым значением main(). Это возвращаемое значение доступно после выхода приложения, которое происходит либо при вызове exit(), либо в том случае, если последний поток приложения завершается.

Наше приложение запускается из Eclipse и является автономным инструментом (в графическом интерфейсе и в пакетном режиме).

ответ

1

Обычный способ сделать это возвращаемое значение метода IApplicationstart:

@Override 
public Object start(IApplicationContext context) 
{ 
    ... run the application 

    return Integer.valueOf(0); 
} 

Хотя возвращаемое значение может быть любым Object это обычно возвращают Integer.

Объект IApplication уже определяет несколько значений выхода для вашего EXIT_OK, EXIT_RESTART и EXIT_RELAUCH:

public static final Integer EXIT_OK = new Integer(0); 

public static final Integer EXIT_RESTART = new Integer(23); 

public static final Integer EXIT_RELAUNCH = new Integer(24); 
+0

Ну, нам нужны дополнительные возвращаемые значения. И они должны отличаться от трех заранее определенных. К сожалению, JavaDoc не указывает, с каким Целом связано, с какой константой –

+0

Насколько я вижу, вы можете использовать любое значение Integer, которое вы хотите. Я добавил предопределенные значения –

+0

Я скопировал их непосредственно из интерфейса IApplication. На каком классе вы смотрите? –

Смежные вопросы