Sono disposto a provare javafx per la prima volta, sono passato al sito javafx Oracle per scoprire che javafx ora viene fornito con JDK 7u25. Ho aggiornato la mia versione di Java ma non sono sicuro di cosa sto cercando. Ottengo errori "non riesco a trovare il simbolo" ogni volta che cerco di importare e utilizzare una classe javafx. Ho trovato i file "javafx-mx.jar" "javafx-doclet.jar" "ant-javafx.jar" in% JAVA_HOME%/lib ma per quanto ho capito, quelli sono pensati per essere usati da JRE, non dal JDK. Mi piacerebbe davvero non dipendere da alcun plugin di eclipse. Io uso Maven per il processo di compilazione. Ho visto un paio di plugin Maven javafx, ma sembrano avere come target gli strumenti javafx. Sto ottenendo l'immagine sbagliata? Come posso ottenere che le classi vengano importate correttamente?Come posso ottenere le classi javafx in runtime?
EDIT
Ora sono in grado di compilare il progetto con quello che ho trovato here. Si consiglia di aggiungere:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>javafx</artifactId>
<version>2.2</version>
<scope>system</scope>
<systemPath>${java.home}/lib/jfxrt.jar</systemPath>
</dependency>
Ciò ha risolto i miei problemi di compilazione, ma non è possibile eseguire il programma, che sto cercando di eseguire questo semplice example, ma ottengo questo errore:
java.lang.NoClassDefFoundError: javafx/application/Application
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:792)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)
at java.net.URLClassLoader.access$100(URLClassLoader.java:71)
at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:285)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.ClassNotFoundException: javafx.application.Application
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
Qualsiasi idee su come aggiungere la stessa libreria al runtime? Sto usando maven-exec-plugin.
possibile duplicato di [compilare manualmente javafx 2.0] (http://stackoverflow.com/questions/9436219/compile-javafx-2-0-manual) – jewelsea
@jewwlsea Grazie, l'altra risposta mi ha dato un po 'di luce, tuttavia non è lo stesso se vuoi costruirlo con Maven. – amaurs
Sì, d'accordo, con l'aggiornamento non è più un duplicato. – jewelsea