Я новичок в Java и очень новичок в технологии веб-запуска. Я возился с файлами jnlp xml, чтобы попытаться получить желаемое поведение «запустить это приложение и, при необходимости, установить JavaFX, если его нет в вашей системе». Вот мой файл jnlp:
<?xml version='1.0' encoding='UTF-8' ?>
<jnlp spec='1.0' xmlns:jfx="http://javafx.com" codebase='http://localhost/java/app' href='launcher.jnlp'>
<information>
<title>Test Launcher</title>
<vendor>OzBarry</vendor>
<description kind='one-line'>
Test Launcher/JNLP/Webstart Demo
</description>
</information>
<resources>
<jfx:javafx-runtime version="2.1+" href="http://javadl.sun.com/webapps/download/GetFile/javafx-latest/windows-i586/javafx2.jnlp"/>
</resources>
<resources>
<j2se version='1.6+' />
<property name="jnlp.packEnabled" value="true" />
<property name="jnlp.versionEnabled" value="true" />
<jar href='launcher.jar' main='true' />
</resources>
<application-desc main-class='demo.DemoLauncher' />
<update check="prompt-update"/>
</jnlp>
Когда я запускаю свое приложение, оно предлагает мне загрузить javafx (даже если оно уже установлено, что немного раздражает), и как только это будет сделано, оно попытается запустить приложение, но остановится с ошибкой типа «где javafx, потому что я не знаю !?"
Я использую 32-разрядную версию Windows 7 с Java 1.7 (Java SE Runtime Environment 7u5), и она только что установлена (ранее я полностью удалил java, стер свои временные файлы и сделал новую установку).