Подтвердить что ты не робот

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

Я заметил, что когда я запускаю Netbeans, он отображается в диспетчере задач как netbeans.exe, поскольку все мои собственные приложения Java отображаются как java.exe или javaw.exe.

Как я могу изменить это, чтобы имена процессов отображались как myapp.exe?

4b9b3361

Ответ 1

Имя процесса - это имя JVM. Поэтому, если вы переименуете jvm, у вас есть другое имя процесса. Есть несколько инструментов, которые могут сделать это для вас. Например Launch4J

Ответ 2

IMO лучшим вариантом является выбор одной из многих пусковых установок с открытым исходным кодом. Все они обеспечивают более удобный контейнер для развертывания, чем java.exe и пакетный файл.

Я собрал список из них после краткого поиска в google (не в определенном порядке и не может быть исчерпывающим):

(полное раскрытие: я работаю над winrun4j)

Ответ 3

Не легко. Самый простой способ (но не приятно!) - просто скопировать java.exe(только 68 тыс. На мою систему, возможно, практично!)

Если вы беспокоитесь о том, какой процесс java есть (например, одна потребляющая память/процессор и т.д.), используйте стандартный инструмент jps для идентификации процессов Java

Ответ 4

Netbeans и Eclipse поставляются с файлом .exe, который в свою очередь запускает JVM. Exe itaself, вероятно, ничего не делает после запуска VM. Я подозреваю, что в java.exe NetBeans также присутствует диспетчер задач.

Итак, вам нужно написать родной exe (используя какой-то инструмент Windows), который делает аналогичную вещь.

Ответ 6

В основном есть два подхода: один из них уже описан: с помощью таких инструментов, как Launch4j, WinRun4J для создания собственных пусковых установок Windows.

Другим подходом, который кажется лучше, является использование Apache Procrun для переноса приложения Java как службы Windows. Во время процесса установки службы мы можем предоставить процессу значимое имя, например, OurApp.exe.

Все, что нам нужно сделать, это переименовать prunsrv.exe в наш файл OurApp.exe и заменить каждое возникновение prunsrv.exe в наших сценариях установки | start | stop | uninstall service на MyApp.exe.

Подробнее см. Использование Apache Procrun для переименования имени процесса программы Java в Windows