Возможно ли / как встроить и получить доступ к файлам HTML в JAR?

Я сейчас несколько заблокирован: я написал довольно сложное Java Desktop App (без Applet / Web App!), которое имеет свое собственное «Руководство пользователя». Это руководство состоит из некоторых файлов HTML и JPG. Это руководство отображается в «Меню справки» в моем приложении с помощью JEditorPane.

Все идет нормально. Это работает очень хорошо, пока я запускаю Программу с Eclipse. Как только я создаю версию развертывания как исполняемый файл jar (который упакован в .exe с launch4j), HTML «Viewer» не может отобразить руководство пользователя (изображения отсутствуют).

Я понимаю, почему это происходит, но я понятия не имею, как это исправить / обойти.

Мое приложение загружает свои ресурсы (свойства «Файлы», «Иконки» и т. Д.) Через getClass (). GetResource (). Примеры:

this.setIconImage(new ImageIcon(getClass().getResource("/images/dialog-question.png")).getImage());

stream = new BufferedInputStream(MABIUpdater.class.getResourceAsStream("/settings.properties"));

Как я уже говорил, это работает очень хорошо (запуск приложения из Eclipse ИЛИ в виде упакованного исполняемого файла или runnable-jar.

Поэтому я тоже попытался получить доступ к своим HTML-руководствам:

File manual = new File(getClass().getResource("/manual/help.html").toURI());

jEditorPane.setPage(manual.toURI().toURL());

Это НЕ действительно работает. Запуская программу через Eclipse, я вижу Руководство, но с отсутствующими изображениями. Запуская его через jar / exe, я получаю пустую рамку.

Так есть ли какая-нибудь «хитрость» в том, как этого добиться? Я предполагаю, что одной из проблем является сама страница HTML, потому что она не может получить доступ к связанным изображениям в этом банке. Вот действительно маленький пример HTML-файла, который не работает (отсутствует изображение):

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
<html lang="de">
    <head>
        <title>Manual</title>
    </head>
    <body>
        <h1>Example: </h1>
        <p>fubar</p>
        <img style="display: block; text-align: center;" src="../manual/img/Shot01.png" width="666" height="644" border="0" alt="Bildtext">
        <p><a href=\"http://www.google.com/\">blablubb</a></p>
    </body>
</html>

Я надеюсь, что моя проблема ясна, и у кого-то есть идея;).

Редактировать: все необходимые HTML-файлы и изображения находятся в JAR-файле / classpath. (просто чтобы прояснить это)

Ответы на вопрос(2)

Ваш ответ на вопрос