|
|
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Появилось необходимость из программы, написанной на джаве, перезапускать службу windows. Пока только удалось частично этого добиться следующим образом. 1. Написал такой бат-ник: автор @echo off chcp 1251 net stop ActiveMQ && net start ActiveMQ 2. Создал ярлык на этот бат-ник, установил у него в свойствах, чтобы он запускался от имени администратора 3. Написал в джаве такой метод: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. Вызываю этот метод так: Код: java 1. 2. 3. 4. 5. 6. 7. 8. В итоге он у меня всё делает (пока в скрипте прописал только остановку службы), но перед этим запрашивает в отдельном окне имя администратора и его пароль. И пока не знаю, как сделать, чтобы ввод имени пользователя и его пароля происходил в автоматическом режиме. Пытался сделать это сразу в скрипте, но у меня ничего не получалось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 16:12 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Гошпади, сколько говнокода-то. Вы понимаете что половину вашего кода можно выкинуть и хуже от этого работать не станет? А вы знаете что разделители пути не ограничиваются символами / и \? И что под виндой можно использовать оба? А вопрос по-сути к Java отношения не имеет. Windows не даёт простому пользователю исполнять админские действия без подтверждения. Стандартный UAC. Можете своё приложение под админом сразу запустить и тогда вопросов не будет. Возможно через .lnk выйдет, если вы там укажете всегда запускать под админом, а потом командой (start?) будете запускать именно lnk. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 16:32 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Заметил, что выложил код не того метода, вот правильный: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 16:52 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczГошпади, сколько говнокода-то. Вы понимаете что половину вашего кода можно выкинуть и хуже от этого работать не станет? А вы знаете что разделители пути не ограничиваются символами / и \? И что под виндой можно использовать оба? А вопрос по-сути к Java отношения не имеет. Windows не даёт простому пользователю исполнять админские действия без подтверждения. Стандартный UAC. Можете своё приложение под админом сразу запустить и тогда вопросов не будет. Возможно через .lnk выйдет, если вы там укажете всегда запускать под админом, а потом командой (start?) будете запускать именно lnk. 1. Код не мой, мне его дали (взяли с какого-то американского проекта). 2. Во втором пункте я и писал, что использовал ярлыки и прописывал там запуск с админскими правами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:03 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, агонь. вообще есть константа File.separator ))) как раз то что надо тсу )) а вообще да. как то видел код навроде: иф (Файл.сепаратор="/") зен ос.сетТайп("линукс") елс ос.сетТайп("виндовс") тс, пиши батник, а да ты уже его написал )) и запускай его вот этой командой: cmd[0] = "cmd.exe"; cmd[1] = "/C"; cmd[2] = command; } Process proc = Runtime.getRuntime().exec(cmd); которую ты в принципе тоже уже написал. в чем вопрос то? в админских правах? ну так ты можешь происать запуск батника с нужными правами. или самой джаве дать в системе админские права. но тут как бы не вопрос к джаве, а к админам твоей виндовс-машины. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:29 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
andreykaT, Извините, вы пьяны???) И обратились не ко мне, и пишите так сумбурно. Ещё и как-то невнимательно читаете.)) Я думал о том, что может быть в джаве есть что-то, чтобы сразу запустить команду или программу с правами администратора (и без запроса пароля). Как я писал в своём первом посте, если вешать права на линк и его запускать, то запрашивается логин и пароль. Нужно, чтобы всё происходило в авто-режиме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:37 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichЯ думал о том, что может быть в джаве есть что-то, чтобы сразу запустить команду или программу с правами администратора (и без запроса пароля). Как я писал в своём первом посте, если вешать права на линк и его запускать, то запрашивается логин и пароль. Нужно, чтобы всё происходило в авто-режиме. В Java ничего такого нет. Фишка чисто виндовая и кросплатформенной Java на неё плевать. Но для виндовс ещё куча способов решить вопрос. https://stackoverflow.com/questions/11041509/elevating-a-processbuilder-process-via-uac/11042773 https://stackoverflow.com/questions/4662574/how-do-i-elevate-my-uac-permissions-from-java http://www.naturalborncoder.com/java/2012/08/02/starting-and-stopping-services-from-java/ Ищите инфу про UAC. На чистой Java тут ничего не закодить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:40 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
я то как раз нет а вы - хз. правами в системе заведует только одна программа. и эта программа называется "операционная система", а не та, которую вы пишете. дайте права своей жвм права админа, и никакие пароли у вас требоваться не будут. если не хотите - можете внутри скрипта прописать их. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:41 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichЗдравствуйте. Появилось необходимость из программы, написанной на джаве, перезапускать службу windows.Не может быть такой необходимости. Примите это как данность и озвучьте, пожалуйста, проблему, которую вы решаете, а не способ, который вы придумали. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:43 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
у них по ходу месадж брокер периодически зависает и они решили написать патч для программы для перезапуска очереди )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 17:52 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLich Код: java 1. У мелкомягких учитесь? У них в SDK тоже есть условия на "мотороллеры" из прошлого тысячелетия. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:00 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
andreykaT, в точку. Как раза месседж брокер периодически гонит (к сожалению без внешних ошибок, служба продолжает работать нормально), и нужно его перезапускать, чтобы всё заработало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:02 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, нет, древний код. Проект начало 2000-ых. Проект называется "Протеже". Какой-то там американский институт разработал. Насколько я знаю, у меня в команде это кто-то взял с сайта оракла по джаве (из примеров). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:03 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichandreykaT, в точку. Как раза месседж брокер периодически гонит (к сожалению без внешних ошибок, служба продолжает работать нормально), и нужно его перезапускать, чтобы всё заработало. решение канеш рабочее, тут не поспоришь, но это, простите, как понос винной пробкой лечить. в принципе, на какое-то время сдержит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:08 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichмесседж брокер периодически гонит (к сожалению без внешних ошибок, служба продолжает работать нормально), и нужно его перезапускать, чтобы всё заработало.1. Озадачьте сисадминов разбором проблем со службой. С вашей стороны - логи службы, с их - аудит системы. Ну или всё с их стороны, а с вашей - ссылки на доки; 2. В качестве временного костыля зарядите в планировщик ежечасный перезапуск службы - всяко лучше вашего велосипеда; 2.1. Если есть критерий зависания - сделайте из этого критерия триггер для вашего задания - будет перезапуск по условию, а не по времени; 3. Курите "sc sdset", но сразу предупреждаю, что у SDDL - марсианский синтаксис. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:11 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichНасколько я знаю, у меня в команде это кто-то взял с сайта оракла по джаве (из примеров).Есть у программистов плохая привычка решать сисадминские задачи прикладным кодом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:15 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
или так: есть у программистов привычка решать сисадминские задачи ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:20 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Продублирую ответ из windows-подфорума: выкинуть враппер Тануки и взять Apache Procrun . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:26 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
ActiveMQ это же тоже Java. Можно написать обертку, которая будет слушать сигналы и закрывать Java процесс. Не исключено что такая уже есть. А Windows Service сам его перезапустит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:27 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 18:39 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Да способов мониторинга дофига , но лично я вангую проблемы service wrapper, который у Тануки сильно ограничен в бесплатной версии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.12.2017, 19:59 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Попробовал. На втором шаге выдаёт: автор".\activemq" не является внутренней или внешней командой, исполняемой программой или пакетным файлом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 09:34 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Критерием является ошибка (эксепшн) в программе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 09:36 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, мониторинг мне не нужен, мне нужно управление. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 09:38 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichBlazkowicz, Попробовал. На втором шаге выдаёт: Ну, вы бы это. Прежде чем что-то делать попробовали бы разобраться? Командная строка не важна. Важно что должен быть JMX интерфейс у брокера, у которого может оказаться команда перезапуска. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 10:09 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Извините, не понял, про что Вы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 11:11 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichBlazkowicz, Извините, не понял, про что Вы. Вот такой код вы напишете у себя https://docs.oracle.com/javase/tutorial/jmx/remote/custom.html На сколько я понимаю Performing Operations on Remote MBeans ObjectName, адрес, порт, логин и пароль вам нужно взять из настроек и документации к вашей версии ActiveMQ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 11:27 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichмониторинг мне не нужен, мне нужно управление.Документацию не пробовали читать? А там не только про мониторинг. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 12:07 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Просмтривал. Что-то не нашёл, где управлять службой =( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 12:19 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichПросмтривал. Что-то не нашёл, где управлять службой =( Вам шашечки или ехать? Вам обязательно службу перестартовать или достаточно ActiveMQ брокер? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 12:38 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, ну он запущен в качестве службы, соответственно, нужно перезапускать службу. Или я чего-то не понимаю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 13:26 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichну он запущен в качестве службы, соответственно, нужно перезапускать службу. Или я чего-то не понимаю? Наверное, не понимаете, что если брокеру сказать "перезепусти себя", то можно добится аналогичного результата. Служба это всего лишь обертка над java процессом. Не важно перезапустите ли вы службу или java процесс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 13:44 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Хм, и какие тогда у меня есть варианты? Какие способы достижения моей цели? А то сколько разной малознакомой информации, уже голова кругом идёт..... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 14:24 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Проблема: зависает java-приложение, запущенное сервисом. 1. Приложение - Apache ActiveMQ. Идём на сайт, читаем доку, понимаем, что используется Tanuki-wrapper - древняя версия, которую рекомендуется обновить. Идём на сайт Тануки, читаем. Видим три редакции, смотрим ограничения бесплатного варианта (Community). Оп-па - не поддерживается 64-разрядная винда. В топку. Гуглим и находим procrun среди Apache Commons. Читаем доку, готовим запуск сервиса "в новой обёртке". 2. Наверное, брокер виснет не просто так, а с какими-то симптомами. Читаем доку на предмет мониторинга, попутно обнаруживаем разные варианты консолей и, в том числе, возможность перезапуска брокера. Понимаем, что перезапуск службы не очень-то и нужен. Продолжаем читать настройку логирования, ревизируем параметры JVM, в которой работает брокер, думаем. Собираем всё заготовленное в кучу, запускаем новый вариант сервиса и начинаем смотреть на его работу. Вот ни разу не космические технологии - всё доступно сисадмину средней руки, тестировщику и, наверное, специалисту техподдержки "от второй линии". P.S. Отсутствие ссылок на сайты и разделы документации - не упущение. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 15:37 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Правда, если оно с OOME умирает, наверное лучше таки службу перезапускать. А то JMX может и не ответить вовсе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 15:53 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz Правда, если оно с OOME умирает, наверное лучше таки службу перезапускать.Насколько я помню, у procrun есть проблема: когда JVM падает с нулевым кодом выхода - служба будет остановлена без перезапуска. Такого, чтобы процесс упал, а обёртка продолжала работу, вроде, нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:11 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
В любом случае, только что (ноябрь 2017) вышел Commons Daemon 1.1.0 где, судя по трекеру, обеспечена совместимость с Java9 и, вероятно, другие ошибки поправлены. Что до OOM ... Использовать сервис в 32-разрядной JVM на 64-разрядной винде без веских причин - себя не уважать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:17 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Так JVM может не упасть а уйти в FullGC навсегда. Или ещё в какой бесконечный цикл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:23 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovТакого, чтобы процесс упал, а обёртка продолжала работу, вроде, нет.Точнее - такого не может быть при нормальном варианте запуска: procrun.exe это java.exe, который умеет работать сервисом. Плюс-минус некоторые фичи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:24 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczТак JVM может не упасть а уйти в FullGC навсегда. Или ещё в какой бесконечный цикл.Может, наверное. Но ведь для таких случаев и существуют и "настройка логирования" и "ревизия параметров JVM"? Ну то есть, обнаружив подобные аномалии мы должны исключить их, а паллиативы применять исключительно внешним образом - не впечатывая в код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:27 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczТак JVM может не упасть а уйти в FullGC навсегда. JDK-6330863 помечен как решённый 2012-03-24 и там же есть обходные варианты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:33 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Вот что в логах ПО, которое использует ActiveMQ: авторjavax.jms.JMSException: Could not connect to broker URL: tcp://172.26.11.4:61616. Reason: java.lang.IllegalStateException: Timer already cancelled. По первому пункту: у меня 64-битная винда, и activemq нормально работает. На сервере (где стоит наше рабочее ПО) возможно стоит 32-битная ОС. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:46 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Нашел в примерх к ActiveMQ такой код: Код: java 1. 2. 3. 4. Но он у меня с ошибкой вываливается при добавлении коннектора: авторjava.io.IOException: Failed to bind to server socket: tcp://localhost:61616 due to: java.net.BindException: Address already in use: JVM_Bind at org.apache.activemq.util.IOExceptionSupport.create(IOExceptionSupport.java:34) at org.apache.activemq.transport.tcp.TcpTransportServer.bind(TcpTransportServer.java:144) at org.apache.activemq.transport.tcp.TcpTransportFactory.doBind(TcpTransportFactory.java:62) at org.apache.activemq.transport.TransportFactorySupport.bind(TransportFactorySupport.java:40) at org.apache.activemq.broker.BrokerService.createTransportConnector(BrokerService.java:2520) at org.apache.activemq.broker.BrokerService.addConnector(BrokerService.java:339) at org.apache.activemq.broker.BrokerService.addConnector(BrokerService.java:329) at maxlich.app.MessageBrokerManager.<init>(MessageBrokerManager.java:18) at maxlich.app.MessageBrokerManager.instance(MessageBrokerManager.java:27) at maxlich.app.View.lambda$createMainPanel$0(View.java:46) at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022) at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348) at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402) at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259) at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:252) at java.awt.Component.processMouseEvent(Component.java:6533) at javax.swing.JComponent.processMouseEvent(JComponent.java:3324) at java.awt.Component.processEvent(Component.java:6298) at java.awt.Container.processEvent(Container.java:2237) at java.awt.Component.dispatchEventImpl(Component.java:4889) at java.awt.Container.dispatchEventImpl(Container.java:2295) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4889) at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4526) at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4467) at java.awt.Container.dispatchEventImpl(Container.java:2281) at java.awt.Window.dispatchEventImpl(Window.java:2746) at java.awt.Component.dispatchEvent(Component.java:4711) at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:758) at java.awt.EventQueue.access$500(EventQueue.java:97) at java.awt.EventQueue$3.run(EventQueue.java:709) at java.awt.EventQueue$3.run(EventQueue.java:703) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:90) at java.awt.EventQueue$4.run(EventQueue.java:731) at java.awt.EventQueue$4.run(EventQueue.java:729) at java.security.AccessController.doPrivileged(Native Method) at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:80) at java.awt.EventQueue.dispatchEvent(EventQueue.java:728) at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201) at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116) at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101) at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93) at java.awt.EventDispatchThread.run(EventDispatchThread.java:82) Caused by: java.net.BindException: Address already in use: JVM_Bind at java.net.DualStackPlainSocketImpl.bind0(Native Method) at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106) at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387) at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190) at java.net.ServerSocket.bind(ServerSocket.java:375) at java.net.ServerSocket.<init>(ServerSocket.java:237) at javax.net.DefaultServerSocketFactory.createServerSocket(ServerSocketFactory.java:231) at org.apache.activemq.transport.tcp.TcpTransportServer.bind(TcpTransportServer.java:141) ... 44 more ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 16:55 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovВ любом случае, только что (ноябрь 2017) вышел Commons Daemon 1.1.0 где, судя по трекеру, обеспечена совместимость с Java9 и, вероятно, другие ошибки поправлены. Что до OOM ... Использовать сервис в 32-разрядной JVM на 64-разрядной винде без веских причин - себя не уважать. да, кстати, у меня 32-битная jdk. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 17:00 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichНашел в примерх к ActiveMQ такой код: Но он у меня с ошибкой вываливается при добавлении коннектора: Вижу код - запускаю не думая. Что именно вы этим кодом хотели добиться? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 18:40 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichВот что в логах ПО, которое использует ActiveMQ: Код: plaintext 1. Вероятно, за отведённое время не удалось достучаться до никому (кроме вас) неизвестного 172.26.11.4. Вероятно, что и эту ситуацию можно как-то разрулить настройками ActiveMQ.По первому пункту: у меня 64-битная винда, и activemq нормально работает.1. 64-разрядная винда и 64-разрядная JVM - разные вещи. Community редакция Tanuki-wrapper не работает с 64-разрядной JVM. 2. ActiveMQ может работать и как приложение и как сервис.На сервере (где стоит наше рабочее ПО) возможно стоит 32-битная ОС.Последние Windows Server с 32-разрядными вариантами - 2003 и 2008. Оба уже сняты с поддержки. Начиная с Windows Server 2008 R2 (вышел вместе с семёркой в 2009 году) существуют только 64-разрядные серверные винды. В любом случае, нет смысла использовать 32-разрядные винды, если на хосте хотя бы два гигабайта оперативки, а операционная система - новее Windows Server 2003. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 20:55 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
А что ТС-у нужно от Windows? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 22:32 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
maytonА что ТС-у нужно от Windows?Типа, под линуксом ActiveMQ не глючит, даже если её кривыми руками развернуть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 22:38 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
maytonА что ТС-у нужно от Windows? Чтобы UAC сидел ровно на попе и не возникал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 22:44 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczЧтобы UAC сидел ровно на попе и не возникал.С этим-то вообще никаких проблем - запустили "от администратора" то приложение, в котором костыляется перезапуск службы и UAC больше не пикает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.12.2017, 22:48 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovMaxLichВот что в логах ПО, которое использует ActiveMQ: Код: plaintext 1. Вероятно, за отведённое время не удалось достучаться до никому (кроме вас) неизвестного 172.26.11.4. Вероятно, что и эту ситуацию можно как-то разрулить настройками ActiveMQ.По первому пункту: у меня 64-битная винда, и activemq нормально работает.1. 64-разрядная винда и 64-разрядная JVM - разные вещи. Community редакция Tanuki-wrapper не работает с 64-разрядной JVM. 2. ActiveMQ может работать и как приложение и как сервис.На сервере (где стоит наше рабочее ПО) возможно стоит 32-битная ОС.Последние Windows Server с 32-разрядными вариантами - 2003 и 2008. Оба уже сняты с поддержки. Начиная с Windows Server 2008 R2 (вышел вместе с семёркой в 2009 году) существуют только 64-разрядные серверные винды. В любом случае, нет смысла использовать 32-разрядные винды, если на хосте хотя бы два гигабайта оперативки, а операционная система - новее Windows Server 2003. Ваши слова: басил а. сидоровОп-па - не поддерживается 64-разрядная винда ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 08:52 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, ваша цЫтатаCommunity редакция Tanuki-wrapper не работает с 64-разрядной JVM. Выше указал, какая у меня JVM ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 08:54 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, tot zheActiveMQ может работать и как приложение и как сервис. выше уже писал про это. У меня служба (service). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 08:55 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczMaxLichНашел в примерх к ActiveMQ такой код: Но он у меня с ошибкой вываливается при добавлении коннектора: Вижу код - запускаю не думая. Что именно вы этим кодом хотели добиться? Ожидал, что он стартанёт брокер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 08:57 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. SidorovmaytonА что ТС-у нужно от Windows?Типа, под линуксом ActiveMQ не глючит, даже если её кривыми руками развернуть? Хм, действительно, под линуксом бы наверно было проще его перезапустить из своей программы. Но клиент приверженец продуктов от мелкомягких. Да и у меня нет прямой связи с ним (клиентом). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 08:59 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichВаши слова:Да, мои. Только это не вполне корректная формулировка, а вы не, глядя в оригинал и не пытаясь поправить меня, продолжаете талдычить неверную хрень исходя из неверных исходных данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 13:05 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichОжидал, что он стартанёт брокер. Да. Стартанёт брокер внутри вашей JVM. Того брокера что у вас уже запущен внутри службы это никак не коснется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 13:15 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Basil A. Sidorov, Конечно, лучше на другого спихнуть вину, чем признать свою. Цитата с сайта этого раппера: автор64-bit Windows versions of the Java Service Wrapper are not currently being made available in the Community Edition. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 14:48 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
BlazkowiczMaxLichОжидал, что он стартанёт брокер. Да. Стартанёт брокер внутри вашей JVM. Того брокера что у вас уже запущен внутри службы это никак не коснется. А если попытаться остановить брокер используя те же классы, объекты и методы, то это тоже не коснётся брокера, запущенного снутри службы? Если да, то как тогда "доступаться" до него? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 14:50 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Тут предлагали заменить раппер. А даже в последней версии activeMQ используется раппер от Тануки? И если да, то отсюда второй вопрос: если этот раппер такой древний и несовершенный, то почему они сами не используют свой более совершенный раппер Procrun ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 14:53 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLichто почему они сами не используют Ну, блин всё же написано. Они его прикрутили, а потом там лицензия поменялась. http://activemq.apache.org/java-service-wrapper.html Но никто не мешает скачать новую версию и самому поставить. Да, и завернуть в procrun самостоятельно тоже не велика задача. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 15:00 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Blazkowicz, Там про Procrun там и не слова. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 15:33 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
MaxLich, Код: java 1. 2. В этом случае Windows запросит подтверждения от самого пользователя: ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 19:16 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
UsmanВ этом случае Windows запросит подтверждения от самого пользователяаналог sudo ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.12.2017, 19:26 |
|
||
|
Как перезапустить windows-службу из программы на java?
|
|||
|---|---|---|---|
|
#18+
Всё пацаны, расходимся. Это не служба. Вернее не совсем служба. Используется не базовый раппер, а какая-то сторонняя программка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.12.2017, 09:02 |
|
||
|
|

start [/forum/topic.php?all=1&fid=59&tid=2122368]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
150ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
82ms |
get tp. blocked users: |
2ms |
| others: | 262ms |
| total: | 542ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...