javaone

在为另一场JavaOne 2012午餐吃了意大利经典组合后,我前往希尔顿帝国宴会厅B观看了演示“掌握Java部署”。 来自Oracle的发言人是Mark Howe和Igor Nekrestyano

Howe表示,部署团队的目标是帮助Java开发人员将其应用程序部署到所选平台。 他首先讨论了“功能弃用”。 在某些情况下,有多种方法可以完成同一件事。 例如jarjar和pack200。 通过弃用多余的(尤其是较旧的)方法,他们不必花费太多时间来支持和修复这些很少使用的东西上的错误。

Howe在JDK 7,JDK 8和JDK 9中显示了不推荐使用和删除的功能表。通常,不推荐使用和/或删除的任何东西都有替代品,使用不推荐使用/删除的功能的人们应该开始寻找最适合的替代品他们。

从JRE 7 Update 6开始,将为Mac OS X发行完全受Oracle支持的JRE。Oracle的目的是同时针对所有部署环境修复bug和跨JVM添加功能。 JRE 7与Apple的JRE 6“几乎兼容”。一项更改是与Oracle对其他平台的JVM支持更加一致,并使Oracle在Mac OS X上更新JRE,而不是使用Mac“软件更新”。 一个警告是“目前不支持Mac上的Chrome(仅32位)”。

为了延续平台JVM功能极性的主题,JavaFX现在与JRE for Linux一起提供。 Howe的“ Java和JavaFX的融合”幻灯片显示了一个表格,指示Java和JavaFX融合版本的进度。 JavaFX的目标是成为Java规范中的核心库之一。 JDK 8的计划包括“能够运行JavaFX应用程序的Java启动器”和“用于Java和Javac的启动类路径上的jfxrt.jar”。

豪介绍了Java部署工具包,并将其描述为“简化浏览器中Java内容部署的工具”。 他将deployJava.js(“原始版本”)与dtjava.js(“更好的JavaFX支持和可移植性”)进行了对比。 尽管Mac或Linux上没有自动启动功能,但dtjava.js版本“支持所有平台上的所有部署方案”。

Howe谈到了WebStart,并解释说“用户体验并不像您希望的那样好。” 他将其与dtjava.js的使用进行了对比,后者允许开发人员设置参数以控制从JavaScript的启动。 它提供了更多的控制权和更好的用户体验。 这也消除了对固定代码库的需要。 幻灯片中显示的使用dtjava.launch的代码需要JRE 7 Update 6或更高版本。

打包工具的目标是“简化应用程序开发人员的部署”。 命令行工具bin / javfxpackager(或一组Ant任务lib / ant-javafx.jar)可与JDK 7 Update 6一起使用。“ NetBeans的最新版本”支持这些。

豪介绍了完全独立的应用程序的几种动机。 一个独立的应用程序包含“运行您的应用程序所需的所有工件”。 它具有Java运行时的私有副本,并消除了对外部JRE的依赖。 自包含应用程序的许多动机都围绕着获取当前JRE来运行应用程序的问题。

自包含应用程序的好处包括感觉本机应用程序,改进的兼容性,在新系统上更容易部署,可选的管理特权以及对更新的发行渠道(如Apple Apps Store)的支持。 自包含应用程序的警告包括较大的大小(包括JRE),“下载并运行”而不是WebStart的“单击并启动”,需要按平台构建程序包以及其他当前限制,例如需要在目标机上构建程序包平台和应用程序更新是开发人员的责任。”

要创建独立的应用程序,需要使用JDK 7 Update 6以及可选的第三方工具(例如WiX)才能在Windows上构建MSI。 豪展示了一张带有Ant代码的幻灯片,用于生成自包含的应用程序。 开发人员预览版将允许开发人员选择JVM的目标版本(当前选择是JRE 7 Update 6或JRE Update 10)。 开发人员预览版预计将随JRE 7 Update 10提供。JDK 7 Update 10也预计将支持Mac App Store支持。

与JavaOne 2012上的许多其他演讲一样,我们也征求了社区的反馈。 在这种情况下,部署团队想知道人们想要和需要什么以更有效地进行Java应用程序的Web部署。 豪有一张很好的幻灯片,将可执行的JAR到WebStart以及独立的应用程序进行了比较。

Mac App Store不允许应用程序“依赖可选安装的技术”。 其他要求包括需要应用程序“在沙箱中运行”和“遵循UI准则”。 应避免使用某些API(FileChooser)。 有关更多详细信息,请参阅JavaOne 2012幻灯片“在Mac OS X上使用OpenJDK 7部署应用程序”和JavaFX部署指南的后续版本。

Howe的“要记住的关键点”包括Java与JavaFX的合并,Java的新平台,新的部署选项(自包含的应用程序捆绑和部署到Mac App Store)以及弃用旧的部署功能。

一位与会者询问是否有办法在多个共享的独立应用程序之间共享单个JRE。 答案是当前没有办法做到这一点,但是可以选择不将JRE包含在其他自包含的应用程序中。

在回答另一个问题时,发言者表示他们不知道有任何弃用Swing的计划。 他们还回答了另一个问题,即目前尚无Maven支持构建独立的应用程序(使用Ant或NetBeans)。

此演示文稿中显示了几张很好的幻灯片,我希望将来能更仔细地看一下。 幸运的是,Howe表示将提供这些功能。 本届会议涵盖的大部分内容将是开源的,鼓励听众成员为开源项目做出贡献。

参考: JavaOne 2012:在Inspired by Actual Events博客上从JCG合作伙伴 Dustin Marx 掌握Java部署 。

翻译自: https://www.javacodegeeks.com/2012/10/javaone-2012-mastering-java-deployment.html

javaone

javaone_JavaOne 2012:掌握Java部署相关推荐

  1. JavaOne 2012:掌握Java部署

    在吃完一次JavaClass 2012午餐会的意大利经典组合后,我前往希尔顿帝国宴会厅B观看了演示"掌握Java部署". 来自Oracle的发言人是Mark Howe和Igor N ...

  2. javaone_JavaOne 2012覆盖率

    javaone 年度Java盛会JavaOne于9月30日至10月4日在旧金山举行. 进行了许多有趣的演示,再次证明了健康的Java生态系统. Java Code Geeks未能参加会议,但是我们的J ...

  3. javaone_JavaOne 2012:观察与印象

    javaone 我正坐在旧金山国际机场等待登上一架飞机,然后又一次满意但累人的JavaOne(2012)体验,开始撰写这篇特别的博客文章. 自上周日的主题演讲以来,在会议上狂热地撰写了约30篇博客文章 ...

  4. 「实战篇」开源项目docker化运维部署-后端java部署(七)

    原创文章,欢迎转载.转载请注明:转载自IT人故事会,谢谢! 原文链接地址:「实战篇」开源项目docker化运维部署-后端java部署(七) 本节主要说说后端的部署需要注意的点,本身renren-fas ...

  5. 在Windows Server 2012 R2 Standard 部署 ASP.NET Core程序

    前言: 随着ASP.NET Core 1.0的发布,论坛里相关的文章也越来越多,正好有时间在测试环境上搭建 ASP.NET Core的发布环境,把过程中遇到的问题写给大家,以便有用到的朋友需要. 环境 ...

  6. Devoxx 2012:Java 8 Lambda和并行性,第1部分

    总览 Devoxx是世界上最大的独立于供应商的Java会议,于11月12日至16日在比利时的Atwerp举行. 今年规模更大了,来自40个不同国家的3400名与会者. 和去年一样 ,我和来自SAP的一 ...

  7. java考试安徽工业大学_2011~2012《Java语言程序设计》试卷A及答案(安徽工业大学)...

    <2011~2012<Java语言程序设计>试卷A及答案(安徽工业大学)>由会员分享,可在线阅读,更多相关<2011~2012<Java语言程序设计>试卷A及 ...

  8. Linux如何搭建Java部署环境

    Java具有着跨平台的特性,一次编写,到处运行,如:将Java程序部署到Linux上也可以运行,但是也是需要借助一些工具,如:JDK,MySql,Tomcat等 为什么是搭建Java部署环境,而不是开 ...

  9. SKIL/工作流程/Java部署客户端

    Java部署客户端 SKIL部署客户端是用于处理SKIL客户端请求的Java API.与原始JSON请求相比,它直观且易于使用.它提供了构建请求对象的构建器模式.响应有自己的类对象. 添加到项目 客户 ...

最新文章

  1. python画柱状图和折线图-Python读取Excel表格,并同时画折线图和柱状图的方法
  2. Android实时监听网络状态
  3. el-table合并行的实现
  4. Java中的类型安全的空集合
  5. 面积积分_袁颖妍:用定理积分求平面区域面积(有代表性的9个例题)
  6. linux系统上手工建库步骤,Linux下Oracle手工建库过程
  7. java每天定时任务
  8. 基于GitHub创建自己的个人网站
  9. itextpdf paragraph使用
  10. 腾讯微信被怼,iOS版微信不能打赏了
  11. intel c语言面试题,Intel的一道C语言笔试题
  12. 【回归分析】logistic regresssion中的拟合优度检验(goodness-of-fit test)
  13. 林郑月娥冀香港发挥连接中外优势发展创科
  14. 小众绿软|媒体:myPlayer 2.1
  15. 前端html制作中国地图,echarts实现中国地图
  16. impress.js css模板,使用impress.js制作幻灯片
  17. kali19.4安装中文输入法
  18. 小米手机任意版本MIUI安装Google Play服务
  19. Installing APK 'app-debug.apk' on 'OPPO R9m - 5.1' for app:debug
  20. matlab 显示表格化,[转载]matlab窗口中显示excel表格的问题

热门文章

  1. 为什么说Java中只有值传递(另一种角度)
  2. Spring Boot整合Thymeleaf模板引擎
  3. Js对象如何添加方法、查看Api
  4. 数组:完成等差等比数列,及其他数列
  5. 使用Servlet上传多张图片——Dao层(BaseDao.java)
  6. Python基础案例(一)
  7. hibernate在分层架构中修改数据(update)时遇到的问题!!
  8. ps查看所有php进程,ps命令就是最基本进程查看命令
  9. delphi7存取配置文件与sqlserver数据库连接_SQL Server基础知识概念要点详细讲解
  10. MySQL创建字段+数据处理函数+汇总数据(聚集函数)+分组数据