Запустите сервис tomcat с помощью пакетного скрипта на Java - PullRequest
0 голосов
/ 12 декабря 2018

Я создал командный файл для запуска командной строки с правами администратора.Здесь я пытаюсь добиться запуска cmd в режиме администратора с помощью созданного мной пакетного файла, а затем запустить службу tomcat в командной строке с повышенными привилегиями с использованием кода Java.

Содержимое моего файла bat выглядит какследует:

@echo off

:: BatchGotAdmin
:-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
   echo Requesting administrative privileges...     Click yes.
   goto UACPrompt
) else ( goto gotAdmin )

:UACPrompt
   echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
   set params = %*:"=""
   echo UAC.ShellExecute "%~s0", "%params%", "", "runas", 1 >> "%temp%\getadmin.vbs"

   "%temp%\getadmin.vbs"
   exit /B

:gotAdmin
   if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
   pushd "%CD%"
   CD /D "%~dp0"
:--------------------------------------

Мой код Java:

Process p =  Runtime.getRuntime().exec("cmd /c adminrights.bat  net start Tomcat7 ", null, new File("C:\\apache-tomcat-7.0.92\\bin"));
BufferedReader BR=new BufferedReader(new InputStreamReader(p.getInputStream()));
             String l;
             while((l=BR.readLine()) != null){
                 System.out.print(l);
         }

Я не совсем уверен, где разместить команду net start Tomcat7.

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