Как мне получить содержимое библиотеки на Java?

#java #native

#java #native

Вопрос:

Как мне проверить содержимое собственной библиотеки. Я зашел так далеко:

 try {
    System.load("/path/to/my/native/libraries/library.so");
} catch (UnsatisfiedLinkError e) {
    System.err.println("Native code library failed to load.n"   e);
}
  

Что мне остается, так это начать правильно использовать библиотеку? Таким образом, вопрос, как мне получить содержимое библиотеки?

Дополнительная информация: Язык: Java ОС: Ubuntu 10.04, Linux

Заранее благодарю.

Комментарии:

1. Вы имеете в виду, что хотите прочитать двоичное содержимое файла?

2. Нет! Я пытаюсь использовать собственную библиотеку. Я загрузил ее, но не могу использовать. Я подумал, что для того, чтобы использовать ее, я должен знать, что в ней находится.

Ответ №1:

Возможно, вы захотите взглянуть на собственный интерфейс Java (JNI). Это облегчает доступ к машинному коду из Java. Возможно, вы захотите взглянуть на «Руководство и спецификацию программиста Java Native Interface«, чтобы начать.

Комментарии:

1. Спасибо за ссылку, я бы посмотрел на нее.

Ответ №2:

JNA предоставляет более простой способ использования библиотек, которые не созданы для JNI (с JNI вам всегда нужен какой-то специфичный для Java код).