Запустить файл приложения jar Rhapsody
Я создал несколько приложений Java для расширения Rhapsody, используя Java API, и успешно развернул их в среде Rhapsody (щелкните правой кнопкой мыши проект -> Приложения).
Я могу видеть экспортированные файлы.jar в каталоге RhapsodyApps/apps.
У меня вопрос, как я могу запустить их из командной строки (под Windows 7)???
заранее спасибо
1 ответ
Мне удалось создать файл.bat с помощью "Создать пакетный файл выполнения приложений". Как я уже упоминал в своем последнем посте, он не существует в меню "Apps" в Rhapsody. Кроме того, он существовал в каталоге "...\share\RhapsodyApps\apps" с именем "SynchronousScriptInvocation.jar". Я жестко закодировал файл RhapsodyApps.hep, добавив следующее:
#REM: This app generates a script which will invoke each app synchronously one after another. ...
name7=Apps\Generate Apps Execution Batch File
isPluginCommand7=1
command7=Apps
applicableTo7=Project,SysML,AUTOSAR_40,AUTOSAR_31,AUTOSAR_32,DDS,UPDM1_DoDAF20,UPDM2_DoDAF
isVisible7=1
Я получил имя (Создать пакетный файл выполнения приложений) из файла AppInfos.xml.
Затем плагин отображается в меню "Приложения" в Rhapsody IDE, и я могу создать файл.bat. Проблемы не останавливались здесь. Пакетный файл не отображал мой плагин, и причина была в чем-то с моей конфигурацией JAVA_PATH. Наконец я изменил.bat файл следующим образом:
@rem This is auto generated script. Be careful on changing it manually.
@rem Build Order
set APP0=0df8829923eb43f4aab9d33ada1ddbf1
@set APPS= %APP0%
set JAVA_PATH=%JAVA_PATH%\bin\java
set JAVA_API=C:/work/User/Build.TRUNK/ProjectName/RhapsodyShare8/JavaAPI
set RhapsodyApps=C:/work/User/Build.TRUNK/ProjectName/RhapsodyShare8/RhapsodyApps
set CLASS_PATH="%RhapsodyApps%"/apps/RhapsodyAppLauncher.jar;"%RhapsodyApps%"/RhapsodyApps.jar;"%RhapsodyApps%"/apps.jar;"%JAVA_API%"/rhapsody.jar
"C:\Program Files (x86)\IBM\Rational\Rhapsody\8.0.5\jre\bin\java" -cp %CLASS_PATH% -Djava.library.path="%JAVA_API%" apps.RhapsodyLauncherApp %APPS%
Наконец-то это работает. Я надеюсь, что этот пост поможет кому-то в будущем.