JavaOne 2012:掌握Java部署

在吃完一次JavaClass 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

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/371586.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/371586.shtml
英文地址,請注明出處:http://en.pswp.cn/news/371586.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數組刪除奇數編號的數據求最后的元素

//abcd...s 這19個字符循環106次成一個長度2014的字符串&#xff0c;然后刪除第奇數個&#xff0c;得到小串&#xff0c;再刪&#xff0c;最后的字符是&#xff1f; #define _CRT_SECURE_NO_DEPRECATE #include<stdio.h> #include<windows.h> #include<string.…

php 提高吞吐量,如何提高網站的吞吐量

吞吐量定義百科吞吐量是指對網絡、設備、端口、虛電路或其他設施&#xff0c;單位時間內成功地傳送數據的數量(以比特、字節、分組等測量)。以上的定義比較寬泛&#xff0c;定義到網站或者接口的吞吐量是這樣的&#xff1a;吞吐量是指系統在單位時間內處理請求的數量。這里有一…

ubuntu下如何查找某個文件的路徑

1.whereis 文件名 特點:快速,但是是模糊查找,例如 找 #whereis mysql 它會把mysql,mysql.ini,mysql.*所在的目錄都找出來. 2.find / -name 文件名 特點:準確,但速度慢,消耗資源大,例如我想找到PHP.ini的準確位置,就需要用 #find / -name php.ini 3.locate 文件名 強力推薦的方…

事件的學習

1.鼠標單擊事件( onclick &#xff09;: onclick是鼠標單擊事件&#xff0c;當在網頁上單擊鼠標時&#xff0c;就會發生該事件。同時onclick事件調用的程序塊就會被執行&#xff0c;通常與按鈕一起使用。 <!DOCTYPE HTML> <html> <head> <meta http-equiv…

使用您自己的規則在Eclipse中自定義PMD

PMD是非常好的Java代碼掃描程序&#xff0c;可幫助您避免潛在的編程問題。 它可以輕松擴展以滿足您的需求&#xff0c;并且本文將為您帶來與JPA的Enumerated注釋用法相關的自定義PMD規則的簡單示例。 在繼續閱讀之前&#xff0c;您應該檢查我以前的文章之一-JPA-Enumerated def…

切換oracle用戶impdp,Oracle 12c pdb使用expdp/impdp導入導出

12c推出了可插拔數據庫&#xff0c;在一個容器cdb中以多租戶的形式同時存在多個數據庫pdb。在為pdb做數據泵導入導出時和傳統的數據庫有少許不同。1&#xff0c;需要為pdb添加tansnames2&#xff0c;導入導出時需要在userid參數內指定其tansnames的值&#xff0c;比如 useridus…

搭建mysql集群,使用Percona XtraDB Cluster搭建

Percona XtraDB Cluster提供的特性有&#xff1a;1.同步復制&#xff0c;事務要么在所有節點提交或不提交。2.多主復制&#xff0c;可以在任意節點進行寫操作。3.在從服務器上并行應用事件&#xff0c;真正意義上的并行復制。4.節點自動配置。5.數據一致性&#xff0c;不再是異…

使用NoSQL實現實體服務–第4部分:Java EE

現在&#xff0c;我已經準備好了框架式的合同優先型Web服務&#xff0c;并使用Ektorp和CouchDB創建了數據訪問層 &#xff0c;是時候將它們連接到一個可以正常工作的實體服務中了 。 為此&#xff0c;我將使用Java EE和Glassfish 3.1。 值得注意的是&#xff0c;對于他的那種R&…

yii2之DetailView小部件

DetailView小部件用于展示單條數據記錄&#xff0c;可配置屬性很少&#xff0c;使用也很簡單&#xff0c;直接貼代碼&#xff0c;一看就懂&#xff01; yii小部件數據小部件DetailView的使用示例&#xff1a; <? DetailView::widget([model > $user,//模型對象&#xff…

克隆安裝oracle,Oracle 之 Cloning $oracle_home (克隆安裝oracle軟件)

用途&#xff1a;Cloning an Oracle Home &#xff0c; 可以免去多臺機器重復安裝oracle軟件1、停止相關進程[rootnode1 bin]# ./crsctl stop cluster -all2、打包 dbhome_1 目錄[rootnode1 11.2.0]# cd /u01/app/oracle/product/11.2.0/[rootnode1 11.2.0]# tar -zcvpf db_1.b…

gitlab的安裝和基本維護

基本介紹 GitLab是一個自托管的Git項目倉庫&#xff0c;可以自己搭建個人代碼管理的倉庫&#xff0c;功能與github類似。 安裝 操作系統&#xff1a;CentOS6.5 gitlab官網下載安裝地址&#xff1a;https://about.gitlab.com/downloads/#centos6 1.安裝依賴的包 yum install cur…

Spring配置文件和Java配置

我的上一個博客介紹了Spring 3.1的配置文件&#xff0c;并解釋了使用它們的業務案例&#xff0c;并演示了它們在Spring XML配置文件中的用法。 但是&#xff0c;似乎很多開發人員更喜歡使用Spring的基于Java的應用程序配置&#xff0c;因此Spring設計了一種使用帶有現有Configu…

php 刪除單個文件大小,php刪除指定大小的jpg文件

function actionZmdel(){//set_time_limit(0);$dir dirname(dirname(dirname(dirname(__FILE__))))./2012jxgwyimg;$dirarr scandir($dir);echo 正在刪除...;foreach($dirarr as $subdir){if($subdir ! . && $subdir ! ..){$path $dir./.$subdir;$files glob($path…

2017寒假零基礎學習Python系列之函數之 函數之定義可變參數

若想讓函數接受任意個參數&#xff0c;就可以定義一個可變的參數&#xff1a; def fn(*args): print args fn() >>>() fn(1,2,5,6) >>>(1,2,5,6) 原理是Python解釋器把傳入的一組參數封裝在一個tuple傳遞給可變參數&#xff0c;因此在函數內部&#xff0c;直…

在Windows上構建OpenJDK

通過做一些實驗&#xff0c;我發現手頭提供JDK源代碼來進行一些更改&#xff0c;使用它等等通常很有用。因此&#xff0c;我決定下載并編譯該野獸。 顯然&#xff0c;這花了我一些時間&#xff0c;盡管我最初的想法是&#xff0c;它應該和運行make命令一樣簡單&#xff1a;&…

unity中怎么在InspectorI面板加LOGO

轉載于:https://www.cnblogs.com/unitySPK/p/7278925.html

oracle stream 主鍵,oracle stream配置向導

1. Stream 的工作原理Stream 是Oracle Advanced Queue技術的一種擴展應用&#xff0c;這種技術最基本的原理就是收集事件&#xff0c;把時間保存在隊列中&#xff0c;然后把這些事件發布給不同的訂閱者。從DBA的角度來說&#xff0c;就是把捕獲Oracle數據庫產生的Redo日志&…

JavaScriptDOM 十四. Event DOM的屬性

1 <!DOCTYPE html>2 <html>3 <head>4 <title></title>5 <script type"text/javascript">6 7 /*8 1. --------------- Event DOM 事件DOM 用戶交互 ------------------9 當事件發生時, 執行JS功能代碼10 11 常用…

五、創建Bean的三種方式

五、創建Bean的三種方式轉載于:https://www.cnblogs.com/ljiwej/p/7280614.html

重寫到邊緣–充分利用它! 在GlassFish上!

現代應用程序開發的一個重要主題是重寫。 自從Java Server Faces引入和Java EE 6中新的輕量級編程模型以來&#xff0c;您一直在努力使用漂亮&#xff0c;簡單&#xff0c;可添加書簽的URL。 PrettyFaces很久以來就一直存在&#xff0c;即使它在3.3.3版本中可以說是成熟的&…