Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

Опции
К последнему сообщению К первому непрочитанному
Offline idtks  
#1 Оставлено : 11 декабря 2024 г. 9:56:09(UTC)
idtks

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.07.2014(UTC)
Сообщений: 104
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 24 раз
Здравствуйте.

Пытаюсь запустить «tls_proxy.jar» под «OpenJDK 11». Дистрибутив брал вот здесь:

https://jdk.java.net/java-se-ri/11-MR3

Версия Java:

Код:
openjdk 11.0.0.2 2024-07-02
OpenJDK Runtime Environment 18.9 (build 11.0.0.2+2-2)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.0.2+2-2, mixed mode)


Беру «tls_proxy.jar» из JCP версии «jcp-2.0.41940-A» (также пробовал в JSP «java-csp-5.0.45549-A-56fe5758» - там результат аналогичный).

В документации по JCP написано, что для версии Java 11 или выше ничего устанавливать не нужно – «оно само заработает». Но это, конечно, не так :)

Если просто запускать из подкаталога с файлами JCP:

Код:
set JAVA_HOME=C:\_java\jdk-11.0.0.2
%JAVA_HOME%\bin\java -jar tls_proxy.jar 9000


- то оно радостно падает с ошибкой:

Код:
Exception in thread "main" java.lang.NoClassDefFoundError: ru/CryptoPro/JCP/tools/Platform
    at tls_proxy.MainLogger.info(MainLogger.java:44)
    at tls_proxy.TLSProxy.main(TLSProxy.java:98)
Caused by: java.lang.ClassNotFoundException: ru.CryptoPro.JCP.tools.Platform
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:582)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 2 more


Надо, очевидно, указать правильный «classpath». А так как при запуске jar-файлов ключ «-classpath» игнорируется (равно как и переменная среды «CLASSPATH»), то приходится лезть в «tls_proxy.jar» и там править файл «\META-INF\MANIFEST.MF» - добавлять атрибут:

Class-Path: ./JCP.jar ./JCryptoP.jar ./JCPRevCheck.jar ./JCPRevTools.jar ./cpSSL.jar

- с этой правкой всё начинает запускаться из подкаталога, где стоит JCP.

Вопрос: можно ли добиться запуска «tls_proxy.jar» не изменяя «tls_proxy.jar»? Скопировать куда-то jar-файлы JCP или сделать что-нибудь еще? Можете посоветовать другие варианты решения?

Спасибо.

С уважением, Константин Ткачук.
Offline basid  
#2 Оставлено : 11 декабря 2024 г. 10:16:21(UTC)
basid

Статус: Активный участник

Группы: Участники
Зарегистрирован: 21.11.2010(UTC)
Сообщений: 1,124

Сказал(а) «Спасибо»: 7 раз
Поблагодарили: 154 раз в 139 постах
Сделайте jar-обёртку с (только) манифестом, в атрибуте Class-Path которого будут перечислены все "сторонние" jar-файлы.
Там же можно указать и умалчиваемую точку входа.
thanks 1 пользователь поблагодарил basid за этот пост.
idtks оставлено 11.12.2024(UTC)
Offline idtks  
#3 Оставлено : 11 декабря 2024 г. 10:29:18(UTC)
idtks

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.07.2014(UTC)
Сообщений: 104
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 24 раз
Спасибо, за вариант решения. Но он, боюсь, не очень подходит в нашем случае. Мы проходим сертификацию довольно громоздкого пакета ПО и «tls_proxy.jar» там как отдельная компонента, которую НЕ надо сертифицировать. Появление нового jar-файла вызовет простую реакцию у людей проводящих сертификацию – «надо проводить исследование / оценку влияния / сертификацию». Хотелось бы этого избежать :(

С уважением, Константин Ткачук.
Online Санчир Момолдаев  
#4 Оставлено : 11 декабря 2024 г. 12:44:07(UTC)
Санчир Момолдаев

Статус: Сотрудник

Группы: Модератор, Участники
Зарегистрирован: 03.12.2018(UTC)
Сообщений: 1,223
Российская Федерация

Сказал(а) «Спасибо»: 101 раз
Поблагодарили: 290 раз в 270 постах
Добрый день.

так попробуйте. команда для линукса
Цитата:
java -cp ".:*:" tls_proxy.TLSProxy 9000


запускать нужно в директории дистрибутива
Техническую поддержку оказываем тут
Наша база знаний
thanks 1 пользователь поблагодарил Санчир Момолдаев за этот пост.
idtks оставлено 11.12.2024(UTC)
Offline idtks  
#5 Оставлено : 11 декабря 2024 г. 13:15:44(UTC)
idtks

Статус: Активный участник

Группы: Участники
Зарегистрирован: 10.07.2014(UTC)
Сообщений: 104
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 24 раз
Спасибо. Запустилось. Даже не знал, что «так можно» :)

С уважением, Константин Ткачук.
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.