Где отсутствует класс UnixSocket в библиотеке dbus? - PullRequest
3 голосов
/ 21 июня 2019

Я смотрю на использование d-bus от Scala. Я добавил это к своему build.sbt:

libraryDependencies ++= Seq(
  ...
  "com.github.hypfvieh" % "dbus-java" % "3.0.2",
  ...
}

Здание найдено, но во время выполнения не может найти класс UnixSocket:

java.lang.RuntimeException: не удалось загрузить библиотеку из любого заданного источника: [SYSTEM_PATH, CUSTOM_PATH, CLASS_PATH] в com.github.hypfvieh.system.NativeLibraryLoader.loadLibrary (NativeLibraryLoader.java:89) в com.github.hypfvieh.system.NativeLibraryLoader.loadLibrary (NativeLibraryLoader.java:69) по адресу cx.ath.matthew.unix.UnixSocket. (UnixSocket.java:54)

Я пробовал различные артефакты на Maven, которые могут иметь этот класс, но безуспешно.

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

1 Ответ

1 голос
/ 24 июня 2019

Ни одна из (старых) классов / библиотек dbus-java отсутствует в Maven, эти привязки никогда не использовали Maven в качестве системы сборки.Исходные привязки все еще можно увидеть в dbus git repo .

Если вы используете Debian, вы сможете получить библиотеки, запустив apt-get install libunixsocket-java.Если вы не используете Debian или производную от Debian, вам придется скомпилировать из source .

Обратите внимание, что, однако, ошибка, которая происходит на самом деле из-за того, что вы не загружаете библиотеку кода JNIэтот код фактически находится в репозитории dbus-java .

...