2016-01-05 3 views
0

Я хочу запустить сонар на моем проекте, так я создаю .bat файла для этогоКак вызвать другой .bat файл, а текущий файл .bat работает

// Первого шага

I needs to start the server first from this location 'C:\Sonar\sonarqube-4.1.1\bin\windows-x86-64\StartSonar.bat' and after server is online and running...

// Второй этап

Open another cmd and set my project path and execute 'C:\Sonar\sonar-runner\sonar-runner-2.3\bin\sonar-runner.bat' on my project

// Что я сделал uptil теперь первым начал сервер, как сказал первый шаг, и теперь я выполнения «.bat», созданный мной, как показано ниже

@echo off 
cd /d D:\PROJECT_Workspace\GUI 
call C:\Sonar\sonar-runner\sonar-runner-2.3\bin\sonar-runner.bat 

I wants to merge Two steps as explained above and create one '.bat' which im failing to create.

Как им нового в создании биты и пытаюсь создать летучую мышь файл, так что любая помощь будет оценена ..

Заранее спасибо !!!

ответ

0
@echo off 
    cd /d D:\PROJECT_Workspace\GUI 
    call C:\Sonar\sonar-runner\sonar-runner-2.3\bin\sonar-runner.bat 

... почему вы делаете компакт-диск в другую папку на D: \, а затем запустить Сонар-runner.bat из C: \? Поэтому строка cd не нужна. С помощью команды вызова вы запускаете вторую партию, после чего вы возвращаетесь к первому. Попробуйте что-нибудь вроде:

start "" "C:\Batch.bat" 

Команда запуска открывает новую Windows и не прерывает первую. Вы также можете использовать start/wait, чтобы иметь такую ​​же функциональность, как вызов (первая партия запускается снова, когда вторая партия завершена/закрыта). Так что, если обе должны запускаться в одно и то же время, используйте start без опции wait.

+0

Мне нужно запустить файл «sonar-runner.bat» в моем каталоге рабочей области – Flash

+0

поэтому мне нужно переключить путь n выполнить файл sonar-runner.bat – Flash

+0

прыгать в sonar-runner.bat в начале партии в каталоге. поэтому линия прекрасна, но запишите ее в стартер сонара. – xs6

0

Просто объединить эти строки в один файл, поэтому он будет выполняться один за другим

Создать летучей мыши файл Sonar.bat и имеют ниже команды

@echo off 
call C:\Sonar\sonarqube-4.1.1\bin\windows-x86-64\StartSonar.bat 
echo sonar started successfully 
cd D:\PROJECT_Workspace\GUI 
call C:\Sonar\sonar-runner\sonar-runner-2.3\bin\sonar-runner.bat 
echo sonar test is running ... 

Создайте другой летучей мыши файл RunSonarAndLog. летучая мышь в том же каталоге sonar.bat

@echo off 
echo %DATE% >> Sonar.log 
call Sonar.bat >> Sonar.log 
echo %DATE% >> Sonar.log 
echo press any key to close 
pause >nul >> Sonar.log 

сейчас вы можете использовать RunSonarAndLog.bat для выполнения и регистрировать verbos. Если и хотите, чтобы прикрепить файл летучая мышь в вашей панели задач Windows для частого доступа, пожалуйста по этой ссылке - pin-batfile-in-windows7-taskbar

Я задаюсь вопросом, почему вы меняете каталог в рабочей области?

+0

получать ошибки, как ошибка: Sonar сервера «HTTP: // локальный: 9000» не может быть достигнута ОШИБКА: Ошибка при выполнении эхолота бегуна ОШИБКА: java.net.ConnectException: Соединение отклонено: подключение – Flash

+0

я должен работать " sonar-runner.bat 'в моем каталоге рабочей области – Flash

+0

Я не думаю, что это лучшее решение, потому что StartSonar.bat может занять некоторое время, а затем пакет перегружен. – xs6

0

Просто используйте команду call для вызова файлов! Как так:

echo off 
goto :menu 
cls 

: меню ЦБС эха типа 1, чтобы начать инициализацию & теста ... эхо Типа 2 для просмотра журналов инициализации & тестовых журналов ... эхо [ набор/р ч = Введите вход: если% ч% фас 1 Гото: инициализация если% ч% фас 2 GOTO: журналы

:initialize 
cls 
call C:\Sonar\sonarqube-4.1.1\bin\windows-x86-64\StartSonar.bat 
echo Sonar is started. 
echo[ 
pause 
echo %date% >> C:\initiallog.txt 
goto :test 
cls 



:test 
    cls 
    cd /d D:\PROJECT_Workspace\GUI 
    call C:\Sonar\sonar-runner\sonar-runner-2.3\bin\sonar-runner.bat 
    echo Sonar test is started... 
    echo %date% >>C:\testlog.txt 
    echo[ 
    pause 
    goto :menu 

    :print 
    cls 
    type C:\testlog.txt 
    type C:\initiallog.txt 
    echo[ 
    pause 
    goto :menu 

Это должно сделать трюк! Если есть какие-либо ошибки или проблемы, пожалуйста, дайте мне знать!

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