Как заставить удаленную отладку работать на Java в Solaris - PullRequest
1 голос
/ 13 ноября 2009

Я пытаюсь заставить удаленную отладку работать с Java на ОС Solaris. Вот что я попробовал -

У меня есть класс Java с именем TestP, у которого есть метод main.

Когда я пытаюсь java -классический путь TestP

программа отлично работает. Но когда я пытаюсь добавить параметры отладки в JVM-

java -Xdebug -Xrunjdwp: transport = dt_socket, address = 8001, server = y, suspend = n -classpath. TestP

Не удается выдать эту ошибку-

UTF ERROR ["../../../src/solaris/npt/utf_md.c":49]: не удалось завершить настройку iconv_open ()

Может кто-нибудь, пожалуйста, помогите мне выяснить, почему эта ошибка появляется ?? Вышеописанное прекрасно работает на моем Linux-компьютере: (

Java-версия на Solaris: Java (TM) SE Runtime Environment (сборка 1.6.0_15-b03) Клиентская виртуальная машина Java HotSpot (TM) (сборка 14.1-b02, смешанный режим)

Java-версия для Linux: Java-версия "1.6.0_0" Среда выполнения OpenJDK (IcedTea6 1.5) (fedora-20.b16.fc10-i386) OpenJDK Server VM (сборка 14.0-b15, смешанный режим)

Спасибо
-Keshav

Ответы [ 3 ]

2 голосов
/ 11 октября 2011

Используя ферму, я обнаружил, что процесс ищет /usr/lib/iconv/geniconvtbl/binarytables/UTF-8%646.bt и 646% UTF-8.bt, поэтому я просто скопировал ISO8859-1% ISO646 .bt до UTF-8% 646.bt и ISO646% ISO8859-1.bt до 646% UTF-8.bt (да, это "646", а не "ISO646"!)

Это, конечно, очень уродливый обходной путь, и я понятия не имею, оказывает ли он какое-либо негативное влияние на JVM, но по крайней мере он запускает JVM без прерывания. (Я сделал это на OpenSolaris 2009.06, кстати)

2 голосов
/ 13 ноября 2009

Хмм ... Кажется, это известная проблема Solaris (не относится к Solaris 10) с Java 6, а не проблема Java (см. Этот поток ).

Кто-то успешно применил обходной путь (см. Это сообщение в блоге ) от парня из Sun, Джеффа Могилланского, но я бы не рекомендовал его, а скорее рассмотрю поиск sunsolve для патча, как указано на форумах Sun.

Посмотрите на это: http://sunsolve.sun.com/search/document.do?assetkey=1-1-6586755-1 (вам потребуется учетная запись Sun Online с действующим контрактом на поддержку или подпиской на программное обеспечение).

0 голосов
/ 13 ноября 2009

Если Pascal Thivent прав, то вы можете попробовать запустить OpenSolaris (на пустой машине или в виртуальной машине) и посмотреть, есть ли проблема также там. Если нет, то рассмотрите возможность использования этой версии, если возможно.

...