Я использую LeapJava.jar для написания простой программы JDK для взаимодействия с Leap. Я примерно следовал этой статье: Разработка для Leap Motion контроллер на Scala и по идее все очень просто. Однако, когда я пытаюсь запустить программу, она завершается с ошибкой RuntimeException
при попытке подключиться к устройству Leap:
Native code library failed to load.
java.lang.UnsatisfiedLinkError: no LeapJava in java.library.path
java.lang.RuntimeException: Nonzero exit code: 1
at scala.sys.package$.error(package.scala:27)
Я выполнил шаги, описанные в документации Leap, но поскольку я Я использую Ubuntu (и sbt), нет четких инструкций, непосредственно относящихся к этой ситуации. Я пробовал разные параметры для аргумента java.library.path:
- указывая на каталог ./lib в проекте (который содержит LeapJava.jar)
- используя каталог lib Leap SDK
- абсолютный путь к каталогу lib Leap SDK
- каталог x86 в каталоге lib LeapSDK
- символическая ссылка на файл LeapJava.jar в каталог x86 и использование этого
У меня возникает та же проблема с запуском в IntelliJ (настройка, как описано в документах Leap, ссылка на которые приведена выше) или из командной строки. например
sbt -Djava.library.path=.:/<path to LeapSDK>/lib run
Я добавил LeapJava.jar в путь к классам в sbt (он находится в каталоге lib), и проект компилируется нормально.
Любые советы (особенно, поскольку я работаю в Linux, который плохо документирован) будут приветствоваться.