Как я могу легко сделать Java-приложение невидимым для пользователя? - PullRequest
8 голосов
/ 16 июня 2010

Я разработал приложение Java, которое в настоящее время запускается двойным щелчком по файлу «.bat», который выполняет что-то вроде «java -jar proy.jar».Это приложение просто прослушивает порт и пишет в базу данных, поэтому оно не имеет пользовательского интерфейса (например, окна).Мне нужно, чтобы это приложение работало как в фоновом режиме, так и в виде службы, но на самом деле я ничего более этого не делаю.Достаточно того, чтобы приложение запускалось так, чтобы пользователь не заметил его, чтобы пользователь не беспокоился и приложение не могло быть по ошибке закрыто.Кстати, это будет выполняться на определенном компьютере, поэтому все в порядке, если мне придется выполнить какую-либо ручную настройку или чтобы эта работа была выполнена.Кроме того, мне нужно, чтобы это приложение запускалось при запуске.

Любая помощь / советы по этому поводу?Заранее большое спасибо за помощь!

С уважением,

Педро

Ответы [ 2 ]

7 голосов
/ 16 июня 2010

используйте javaw.exe вместо java.exe, и вы не получите окно консоли.

из java.sun.com :

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

РЕДАКТИРОВАТЬ:

.bat запустит консоль.Если вы можете жить с консолью в течение доли секунды, вы можете предвосхитить ваш звонок на javaw с помощью start.Это вызовет другой процесс без консоли для javaw и позволит консоли- ful bat выйти.

1 голос
/ 16 июня 2010

Вы можете запустить свое приложение в виде значка на панели задач (Java 1.6), если вы ориентируетесь на среду Windows. Разрешить запуск контекстно-зависимого меню при щелчке по значку на панели задач, чтобы пользователь мог выбрать несколько вариантов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...