javafx项目启动慢的感觉,是所有刚刚接触javafx的人的共同感觉。这是真的吗?
首先,这种感觉是真实的,javafx项目确实启动的时候会比传统的web页面慢,就像flash一样会有延迟。
其次,这种感觉被其他原因夸大了。为何这么讲我们来分析一下,就清楚了。
先暂不论javafx官网的慢是怎么回事,且看netbeans-6.5-javafx建造javafx项目的情况。缺省建造javafx项目会生成相关文件,包括html jnlp _browser.jnlp文件等
打开html文件
<html>
<head>
<title>JavaFXApplication5</title>
</head>
<body>
<h1>JavaFXApplication5</h1>
<script src="http://dl.javafx.com/dtfx.js"></script>
<script>
javafx(
{
archive: "JavaFXApplication5.jar",
draggable: true,
width: 200,
height: 200,
code: "javafxapplication5.Main",
name: "JavaFXApplication5"
}
);
</script>
</body>
</html>
其中有代码
<script src="http://dl.javafx.com/dtfx.js"></script>
在jnlp文件
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8082/servlet/org.netbeans.modules.javafx.project.JnlpDownloadServlet/F%3A/NetBeansApp/JavaFXApplication5/dist/" href="JavaFXApplication5.jnlp">
<information>
<title>JavaFXApplication5</title>
<vendor>xxxtqn</vendor>
<homepage href="http://localhost:8082/servlet/org.netbeans.modules.javafx.project.JnlpDownloadServlet/F%3A/NetBeansApp/JavaFXApplication5/dist/"/>
<description>JavaFXApplication5</description>
<offline-allowed/>
<shortcut>
<desktop/>
</shortcut>
</information>
<resources>
<j2se version="1.5+"/>
<extension name="JavaFX Runtime" href="http://dl.javafx.com/javafx-rt.jnlp"/>
<jar href="JavaFXApplication5.jar" main="true"/>
</resources>
<application-desc main-class="javafxapplication5.Main"/>
</jnlp>
也可以发现以下代码
<extension name="JavaFX Runtime" href="http://dl.javafx.com/javafx-rt.jnlp"/>
大家可以知道为何sun官网上的javafx例子这么慢了吧。你需要大量到sun等相关网站上下载jar后,你的应用才能动起来。不明白sdk里面为何没有这些文件,怪哉。
如果是这样的话,岂不在不联互联网的情况下就无法使用javafx了吗?好,我们现在就来解决这个问题。
先来看看java控制面板,找出java中缓存的下载文件
可以发现许多下载的资源,因为数字签名等原因,如果你直接到链接位置下载的话可能不成功,可以到
http://download.java.net/javafx这里找到你需要的文件。主要是
http://download.java.net/javafx/pack200/下面的几个,下载到项目本地,至于html下的几个js文件,可以下载到本地,然后修改源代码。如下
<script src="js/dtfx.js"></script>
修改jnlp如下
<?xml version="1.0" encoding="UTF-8"?>
<jnlp spec="1.0+" codebase="http://localhost:8080/YouApp/" href="YcJavaFX.jnlp">
<information>
<title>YcJavaFX</title>
<vendor>xxxtqn</vendor>
<homepage href="http://localhost:8080/YouApp/"/>
<description>YcJavaFX</description>
<offline-allowed/>
<shortcut>
<desktop/>
</shortcut>
</information>
<resources>
<j2se version="1.5+"/>
<!--extension name="JavaFX Runtime" href="http://dl.javafx.com/javafx-rt.jnlp"/-->
<jar href="lib/javafx-rt__V1.0.0.jar" />
<jar href="lib/jmc__V1.0.0.jar" />
<jar href="lib/jogl__V1.1.1.jar" />
<jar href="YouJavaFX.jar" main="true"/>
</resources>
<application-desc main-class="youjavafx.Main"/>
</jnlp>
经过这样修改以后,就算sun倒闭了也不怕了。
有问题请到腾讯60797960交流。
- 大小: 17.9 KB
- 大小: 130 KB
分享到:
相关推荐
在这个名为"javaFX完整项目案例可用.zip"的压缩包中,你将找到一个基于JavaFX实现的完整桌面应用程序示例。 JavaFX项目的核心在于它的场景图(Scene Graph)架构,它允许开发者以树状结构来组织UI元素,从而方便地...
在配置javafx之前,需要到Oracle或openJFX的官网下载javafx压缩包并解压,解压路径最好和Java的jdk放在同一目录方便寻找,在下载解压javafx包之后,开始配置javafx项目: 一:eclipse如何配置javafx 1.安装e(fx)...
该项目是一个集成SpringBoot、MyBatis和JavaFX的综合应用,主要用于档案管理的扫描功能。以下将详细解析各个技术在项目中的应用及其重要性。 **SpringBoot** SpringBoot是Spring框架的一个子项目,旨在简化Spring...
在本项目中,"javaFx 完整版项目(Spring+SpringMVC+Mybatis)"是一个融合了JavaFX技术与企业级开发框架SSM(Spring、SpringMVC、Mybatis)的ERP(Enterprise Resource Planning)系统。下面将详细介绍这些关键技术点...
总结,这个“javafx+mysql新闻发布查询系统”结合了JavaFX的富客户端能力与MySQL的数据库管理功能,为用户提供了一个简洁的新闻发布和查询平台。通过学习和分析这个系统,开发者可以深入了解JavaFX的UI设计、JDBC的...
确保在项目中包含 Web 和 JDBC 依赖,因为 JavaFX 是桌面应用,所以不需要 Web 服务器,但需要 JDBC 来与数据库进行交互。 2. **添加 JavaFX 依赖** 在 Maven 或 Gradle 的配置文件中,我们需要添加 JavaFX 的相关...
在本案例中,我们或许会了解到如何将JavaFX项目打包成跨平台的应用。 总结来说,这个“javaFX Demo 模板案例”涵盖了JavaFX的主要特性,包括UI设计、图形绘制、媒体播放、数据绑定和样式定制。通过学习这个案例,...
- 在“项目SDK”中选择你的Java版本,因为JavaFX自Java 11起不再包含在JDK中,所以需要使用支持JavaFX的JDK,如OpenJFX。 - 在“项目模板”中,选择“Empty Project”。 2. **配置Gradle构建脚本**: - 创建`...
这个项目是一个基于Maven构建系统的JavaFX示例代码,适用于开发者想要学习或快速启动JavaFX应用程序的开发。Maven是一种强大的项目管理工具,能够自动化构建、依赖管理和项目信息管理,使得Java开发变得更加简洁。 ...
"JavaFx 小项目 整理的"这个标题暗示了这是一个集合了多个小型JavaFX应用的资源包,可能是为了教学、实践或快速演示JavaFX基本功能而设计的。 "E(fx)clipse项目"是描述中的关键词,这是一款Eclipse插件,专门为...
在这个名为"javafx的一个完整demo"的项目中,我们将探讨如何利用JavaFX来开发一个点菜系统,并实现多窗口间的触发以及数据实时更新到页面的功能。 1. **JavaFX基础知识**:JavaFX是Oracle公司推出的一种基于Java...
在实际项目中,登录信息通常会发送到服务器进行验证,而本地只存储加密后的凭据。不过,这个简单的示例可能仅用于演示目的,没有涵盖这些安全实践。 文件名“JavaFXApplication1”可能是项目的主要类,它继承自...
本项目“WorldCupHANDBOOK”显然利用JavaFX技术来创建了一个关于2010年世界杯的客户端应用程序,这可能是为了提供赛事信息、赛程表、球队数据等互动体验。 在JavaFX中,开发者可以使用丰富的图形用户界面(GUI)...
javafx
一个JavaFx项目通常包含以下几个文件: * 主类(MainApplication):负责启动JavaFx应用程序 * 视图文件(*.fxml):用于描述用户界面组件的布局和外观 * 控制器类(Controller):负责处理用户交互事件和业务逻辑 ...
2. **JavaFX项目创建**:安装插件后,可以在Eclipse中创建新的JavaFX项目。选择File > New > Other > JavaFX > JavaFX Project,然后按照向导设置项目名称、位置和基本配置。 3. **JavaFX源代码编辑**:e(fx)clipse...
自从Java 9发布后,Oracle决定将JavaFX从JDK中剥离出来,作为模块化系统的一部分,这是为了遵循"模块化Java"的目标,使JDK更小、更安全且更易于维护。因此,从Java 11开始,如果你想要使用JavaFX进行开发,你需要...