Hello JavaFX 2.0:命令行介绍
HelloWorld.java(I:最小裸機(jī))
package dustin.examples;import javafx.application.Application; import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * @author Dustin*/ public class HelloWorld extends Application {@Overridepublic void start(final Stage stage) throws Exception{throw new UnsupportedOperationException("JavaFX example not supported yet.");} }上一個代碼片段顯示了兩個JavaFX類( Application和Stage )的導(dǎo)入當(dāng)使用Javac編譯以上代碼而未將JavaFX庫放在類路徑上時,會發(fā)生類似于以下內(nèi)容的錯誤。
HelloWorld.java:3: error: package javafx.application does not exist import javafx.application.Application;^ HelloWorld.java:4: error: package javafx.stage does not exist import javafx.stage.Stage;^ HelloWorld.java:11: error: cannot find symbol public class HelloWorld extends Application^symbol: class Application HelloWorld.java:14: error: cannot find symbolpublic void start(final Stage stage) throws Exception^symbol: class Stagelocation: class HelloWorld HelloWorld.java:13: error: method does not override or implement a method from a supertype@Override^ 5 errors顯而易見的解決方案是將apropos JavaFX庫放在編譯器的類路徑上。 就我而言,構(gòu)建此代碼所需的JavaFX SDK和JAR是C:\ Program Files \ Oracle \ JavaFX 2.0 SDK \ rt \ lib \ jfxrt.jar 。
下一個代碼清單建立在上一個代碼片段的基礎(chǔ)上,并改編自Application類的類級Javadoc文檔中提供的示例。 ?
HelloWorld.java(II:改編自Application的Javadoc)
package dustin.examples;import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.shape.Circle; import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * @author Dustin*/ public class HelloWorld extends Application {@Overridepublic void start(final Stage stage) throws Exception{final Circle circ = new Circle(40, 40, 30);final Group root = new Group(circ);final Scene scene = new Scene(root, 400, 300);stage.setTitle("Hello JavaFX 2.0!");stage.setScene(scene);stage.show();} }上面顯示的JavaFX應(yīng)用程序可以部署到Web瀏覽器 ,但是我將重點(diǎn)放在從命令行運(yùn)行它。 為此,將一個主要功能添加到JavaFX應(yīng)用程序,如下一版本中所示。 ?
HelloWorld.java(III:添加了“ main”功能)
package dustin.examples;import javafx.application.Application; import javafx.scene.Group; import javafx.scene.Scene; import javafx.scene.shape.Circle; import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * @author Dustin*/ public class HelloWorld extends Application {@Overridepublic void start(final Stage stage) throws Exception{final Circle circ = new Circle(40, 40, 30);final Group root = new Group(circ);final Scene scene = new Scene(root, 400, 300);stage.setTitle("Hello JavaFX 2.0!");stage.setScene(scene);stage.show();}/*** Main function used to run JavaFX 2.0 example.* * @param arguments Command-line arguments: none expected.*/public static void main(final String[] arguments){Application.launch(arguments);} }在main功能中只需要一行。 該行是對靜態(tài)方法Application.launch(String ...)的調(diào)用,并帶有傳遞給它的命令行參數(shù)。 現(xiàn)在可以執(zhí)行該應(yīng)用程序,并顯示如下屏幕快照所示。
結(jié)論 這篇博客文章演示了僅使用命令行工具編寫和運(yùn)行簡單的JavaFX應(yīng)用程序。 證明JavaFX 2.0已將“ Java”放回JavaFX中,本文中的示例已使用用于“常規(guī)” Java應(yīng)用程序的典型Java編譯器和Java啟動器進(jìn)行編譯和執(zhí)行。 更復(fù)雜的JavaFX應(yīng)用程序可能會從更特定的工具中受益,但是該工具僅使用標(biāo)準(zhǔn)Java工具進(jìn)行編譯和執(zhí)行。 參考: Hello JavaFX 2.0:來自JCG合作伙伴 Dustin Marx 的命令行介紹,來自Inspired by Actual Events博客。翻譯自: https://www.javacodegeeks.com/2012/08/hello-javafx-20-introduction-by-command.html
總結(jié)
以上是生活随笔為你收集整理的Hello JavaFX 2.0:命令行介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java:使用Fork / Join框架
- 下一篇: 处于RUNNABLE状态的Java线程未