Как ни старайся, я не могу заставить файл JNLP работать локально (двойным щелчком). Кажется, это проблема поиска файла jar, даже если я его укажу относительно файла jnlp. Я получаю следующую ошибку:
Поле href имеет недопустимый
значение: helloworld.jar
Это происходит, даже если файл JNLP находится в той же папке, что и helloworld.jar. Я провел поиск, и это постоянная проблема, особенно для людей, которые хотят упаковать приложение на CD и использовать JNLP. Единственное предоставленное Sun «решение» - это возможность задавать кодовую базу через командную строку, но это не очень помогает. Я не понимаю, почему они не предполагают или не позволяют кодовой базе быть "." или "файл: //." - Я пробовал подобные вещи в параметре codebase тега jnlp (внутри файла), и ничего не получалось.
Мне очень удобно использовать файл JNLP, потому что мне не нужно беспокоиться об обнаружении платформы, собственных библиотеках или даже основных JAR-файлах JOGL; Я просто включаю эту строку, и все для меня сделано:
<extension name="JOGL" href="http://download.java.net/media/jogl/builds/archive/jsr-231-2.0-beta10/webstart/jogl-all-awt.jnlp" />
Я надеюсь найти что-то, что может сделать то же самое. Если нет, я могу вручную (или с помощью Ant) получить JAR-файлы JOGL, это не имеет большого значения; только одна из тех вещей, которые JNLP делает для меня, и я действительно буду скучать.
Какова лучшая альтернатива файлам JNLP, для меня, чтобы использовать локально (то есть двойной запуск для запуска)? Есть ли что-нибудь настолько элегантное или мне просто нужно написать сценарий оболочки для Linux, командный файл для Windows и заставить Ant обнаруживать и загружать соответствующие файлы JOGL?