Java教程是为JDK 8编写的。本页面中描述的示例和实践不利用后续版本中引入的改进,并且可能使用不再可用的技术。
请参阅Java语言更改,了解Java SE 9及其后续版本中更新的语言功能的摘要。
请参阅JDK发行说明,了解所有JDK版本的新功能、增强功能以及已删除或弃用的选项的信息。
问题:下列哪一项不是自包含应用程序的优势?
答案: C. 由于JRE与应用程序捆绑在一起,所以应用程序需要更多的空间。
问题:对错:必须始终使用MIME类型来设置文件关联。
答案: 错误。根据平台和使用的捆绑程序,可以使用MIME类型或文件扩展名。对于Linux,需要MIME类型。对于Windows,需要文件扩展名。对于OS X,需要MIME类型或文件扩展名。在设置文件关联时,不论平台如何,最好同时提供MIME类型和文件扩展名。
问题:在<fx:deploy> Ant任务中,用于标识自包含应用程序的入口点的元素是什么?
答案: <fx:application>元素的mainClass属性用于标识主入口点。如果自包含应用程序有多个入口点,则对于每个次要入口点,使用<fx:secondaryLauncher>元素。
练习:编写<fx:deploy> Ant任务,生成一个名为“My Sample App”的简单应用程序的Windows MSI捆绑包。应用程序的JAR文件位于dist目录中,主类为samples.MyApp,输出文件将写入当前目录。
答案:
<fx:deploy outdir="."
outfile="MySampleApp"
nativeBundles="msi>
<fx:application name="My Sample Application"
mainClass="samples.MyApp"/>
<fx:resources>
<fx:fileset dir="dist" includes="*.jar"/>
</fx:resources>
<fx:info title="My Sample Application"
description="一个简单的示例应用程序"/>
</fx:deploy>
练习:在上一个练习中的代码中添加功能,创建所有Windows安装程序的捆绑包,并为文本文件定义文件关联。
答案:
<fx:deploy outdir="."
outfile="MySampleApp"
nativeBundles="installer">
<fx:application name="My Sample Application"
mainClass="samples.MyApp"/>
<fx:resources>
<fx:fileset dir="dist" includes="*.jar"/>
</fx:resources>
<fx:info title="My Sample Application"
description="一个简单的示例应用程序">
<fx:association extension="txt"
description="文本文件">
</fx:association>
</fx:info>
</fx:deploy>
当nativeBundles属性设置为installer时,打包程序会尝试为该平台的所有支持的安装程序构建捆绑包。不会创建磁盘映像。如果构建特定捆绑包所需的工具不可用,则跳过该捆绑包类型。
Windows在定义文件关联时只需要extension属性。