Возникли проблемы при создании / внедрении JApplet - PullRequest
2 голосов
/ 30 декабря 2010

У меня возникли проблемы с созданием JApplet, и я немного погуглил, но мне явно не хватает чего-то большого.

Я создал проект Eclipse с 6 пакетами, и в одном из них (с именем 'gui') есть два важных файла. Первый называется ComplexApp.java, который выполняет инициализацию приложения (и имеет «public static void main»), а второй, ComplexApplet.java, делает то же самое, за исключением того, что он содержит init () и start () (и не хватает main ()). Апплет и приложение обычно запускаются в Eclipse.

Итак, теперь я экспортировал весь проект в виде файла .jar. Первое, что я заметил, это то, что я никогда не указывал, какой класс .java должен использоваться для запуска апплета (меня однажды попросили выбрать класс, содержащий main (), но я пропустил это, так как applets don ' t имеет main (), только init () / start () / ... правильно?

Если я пытаюсь запустить сгенерированный файл .jar (с помощью средства запуска Jar), ​​я получаю сообщение «Не удалось загрузить атрибут манифеста основного класса», что, я полагаю, нормально. Поэтому я создал файл .jnlp, и когда я запускаю его вручную (или внедряю в html), я получаю сообщение об ошибке: «Поле href имеет недопустимое значение: Complex.jar». Вот jnlp:

<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="" href="">
    <information>
        <title>Complex numbers</title>
        <vendor>ETF</vendor>
    </information>
    <resources>
        <!-- Application Resources -->
        <j2se version="1.6+"
              href="http://java.sun.com/products/autodl/j2se" />
        <jar href="Complex.jar"/>

    </resources>
    <applet-desc 
         name="Complex numbers"
         main-class="gui.ComplexApplet"
         width="800"
         height="700">
     </applet-desc>
     <update check="background"/>
</jnlp> 

Так, кто-нибудь может мне помочь? Довольно пожалуйста? :)

Спасибо.

1 Ответ

0 голосов
/ 30 декабря 2010

Я не знаю jnlp-файлов, но в html-файле вы бы написали:

    <applet 
        code="gui.ComplexApplet" 
        archive="./Complex.jar"
        HEIGHT="240" 
        WIDTH="480" 
    >
    </applet>

только с ./, если он находится в текущем каталоге. Иначе, возможно, абсолютный путь предпочтительнее. Если он просматривается в браузере или в appletviewer, то ./ в порядке, если jar находится в том же месте, html-файл.

основной класс выглядит неправильно, так как вы не хотите использовать основной класс.

...