использование eclipse для создания кода, совместимого с Rhapsody API - PullRequest
0 голосов
/ 13 сентября 2018

У меня есть небольшой код, который я могу собрать и запустить:

setlocal
set PATH=C:\Rhapsody\Rhapsody_8_2_1\jdk\bin;%PATH%
javac java_test.java -cp c:\pathto\rhapsody.jar
java -Djava.library.path=C:\Users\username\IBM\Rational\Rhapsody\8.2.1\Share\JavaAPI -cp c:\pathto\rhapsody.jar;. java_test

он компилируется и запускается без предупреждения / ошибки.

Я хотел бы отладить это, поэтому я скачал последнюю версиюзатмить версию и настроить procjet.

Я добавил "C: \ Rhapsody \ Rhapsody_8_2_1 \ jdk \" как "rhap jdk" и выбрал этот в моем проекте в настройках "Путь сборки Java", установивсистема JRE на вкладке библиотеки для этого (альтернативного jre) "rhap jdk".Я также добавил rhapsody.jar как «external jar»

Если я попытаюсь запустить код, он остановится на первом классе rhapsody с исключением загрузчика классов, который не может загрузить класс:

Exception in thread "main" java.lang.UnsatisfiedLinkError: rhapsody (Not found in java.library.path)
    at java.lang.ClassLoader.loadLibraryWithPath(ClassLoader.java:1348)
    at java.lang.ClassLoader.loadLibraryWithClassLoader(ClassLoader.java:1318)
    at java.lang.System.loadLibrary(System.java:552)
    at com.telelogic.rhapsody.core.RhapsodyAppServer.<clinit>(Unknown Source)
    at ImportDependencies.main(ImportDependencies.java:181)

Я также попытался установить переменную среды (в «конфигурации запуска») java.library.path для C: \ Users \ имя пользователя \ IBM \ Rational \ Rhapsody \ 8.2.1 \ Share \ JavaAPI, и я также попытался добавитьэтот каталог как каталог библиотеки.

В чем проблема

Ответы [ 2 ]

0 голосов
/ 31 января 2019

Я думаю, что приложение ищет файл rhapsody.jar, поэтому вам нужно добавить этот файл в путь классов проекта Java. Файл jar находится в папке установки 8.2.1 / share / JavaAPI /

Есть еще одна хитрость, после добавления файла jar в проект есть опция calle. Собственное расположение библиотеки, вам нужно установить значение в каталог, где расположен этот файл jar. Java Project Properties

0 голосов
/ 16 сентября 2018

Это наиболее вероятно, потому что это не загружает правильный Rhapsody.dll.Папка с банкой рапсодии должна выглядеть примерно так:

enter image description here

Я считаю, что по умолчанию это 64-битная dll, так что просто поменяйте местамиэто с .dll в каталоге WIN32.

...