JavaFX mit ANT deployen als Applet

grindelaner

Bekanntes Mitglied
Hallo,

da ich großer Maven-Anhänger bin und Oracle nur die Möglichkeit anbietet ein JavaFX Projekt mit ant als Applet zu deployen, muss ich das Deployment über ANT lösen. 🙁
Über NetBeans oder über das Toolkit möchte ich das nicht machen

Hat hier jemand schon einmal eine Konfiguration (build.xml) in ANT gebaut, die signierte Jars für ein Applet verwendet?

Mein Problem ist, dass ich das applet nicht starten kann. Es kommt immer wieder zur Fehlermeldung java.security.AccessControlException: access denied ("java.lang.RuntimePermission" "accessDeclaredMembers")

Ich habe also im SecurityManager keine "accessDeclaredMembers"-Rechte...
Nun dachte ich, dass ich über <fx😛ermissions elevated="true"/> in der build.xml meine Rechte hochsetzten kann... Jetzt bekomme ich zwar keine Exception mehr, aber das Applet startet immer noch nicht. 🙁

Meine build.xml sieht so aus:
[XML]
<?xml version="1.0" encoding="UTF-8"?>
<project name="JavaFXSample" default="default" basedir="." xmlns:fx="javafx:com.sun.javafx.tools.ant">

<taskdef resource="com/sun/javafx/tools/ant/antlib.xml"
uri="javafx:com.sun.javafx.tools.ant"
classpath="C:\Program Files\Java\jdk1.7.0_07\lib\ant-javafx.jar"/>

<target name="default">

<fx:application id="sampleApp"
name="Some sample App"
mainClass="de.test.jfx.ApplicationMain"/>

<fx:jar destfile="dist-web/example.jar">
<fx:application refid="sampleApp"/>
<manifest>
<attribute name="Implementation-Vendor" value="Grindelaner"/>
<attribute name="Implementation-Title" value="Prototype"/>
</manifest>
<fileset dir="target/classes/">
<include name="**"/>
</fileset>
</fx:jar>

<fx:signjar destdir="dist-web" keyStore="test.jks" storePass="****" alias="grindelaner" keyPass="****">
<fileset dir='dist-web/' file='example.jar'/>
</fx:signjar>

<fx:deploy width="800" height="600" outdir="dist-web" outfile="Example" embedJNLP="true">
<fx:info title="Example"/>
<fx:application refid="sampleApp"/>
<fx:resources>
<fx:fileset dir="dist-web" includes="example.jar"/>
</fx:resources>
<fx😛ermissions elevated="true"/>
</fx:deploy>

</target>
</project>
[/XML]
 
Wenn du eine JavaFX Anwendung mit OSGi realisieren willst (z.B. e4 Anwendung) kannst du mit Maven Tycho bauen. Osgi Bundle für JavaFX Classloading gibt es schon.
 
Hallo SirWayne,

vielen Dank für die Antwort, aber wie kommst du darauf, dass ich OSGi verwenden möchte?

Ich suche nach einer Lösung ein JavaFX-Projekt mit Maven/Ant sowohl für Browser-, als auch für Web-Anwendungen zu deployen...

Hast du vielleicht Erfahrungen auf diesem Gebiet?
 

Neue Themen


Zurück
Oben