2009-12-17 5 views
0

Я пытаюсь получить NSS код работает, и я получаю эту ошибку:java.lang.UnsatisfiedLinkError: org.mozilla.jss.ssl.SSLSocket.setSSLDefaultOption

java.lang.UnsatisfiedLinkError: org.mozilla.jss.ssl.SSLSocket.setSSLDefaultOption(II)V 
    at org.mozilla.jss.ssl.SSLSocket.setSSLDefaultOption(Native Method) 
    at org.mozilla.jss.ssl.SSLSocket.setSSLDefaultOption(SSLSocket.java:950) 
    at org.mozilla.jss.ssl.SSLSocket.enableSSL2Default(SSLSocket.java:523) 

Я посмотрел на jss4.dll и я вижу в нем setSSLDefaultOption. Код компилируется просто отлично, но он выдает эту ошибку при запуске.

Что может вызвать что-то подобное?

Также, что означает (II) V?

+0

Да, это полностью проблема времени выполнения, поэтому код будет скомпилирован просто отлично. Либо DLL не находится на пути к библиотеке (и, следовательно, Java не может найти его для загрузки), либо API изменился в базовой библиотеке, и ваш класс оболочки java пытается загрузить метод, который не определен в DLL. – BryanD

ответ

1

(IIV) означает метод void, содержащий два параметра int. V означает Void. Я для инт. То, что входит в круглую скобку, является типом параметров. Возвращаемый тип появляется перед скобкой.

[Редактировать] Все детали этого представления подписей можно найти здесь: http://java.sun.com/docs/books/jvms/second_edition/html/ClassFile.doc.html#14152

Во всяком случае, об ошибке связи, что вы получили. Кажется, вы компилируете одну версию библиотеки и работаете с более старой версией, в которой метод setSSLDefaultOption (int, int) не определен.

Смежные вопросы