簡體   English   中英

了解 Java 上的部署 9+

[英]Understanding Deployment on Java 9+

After ignoring Java updates for quite some time, I now want to move on from the somewhat shady Java 10.0.2 Runtime I found somewhere to Java 13. As it turns out, Oracle stopped the "monolithic" JRE philosophy after Java 8 and I can對於我如何 go 關於部署的問題,似乎沒有找到任何明確的答案。

以下是我認為保持不變的內容:

  • IDE (eclipse) 工作流程基本保持不變
  • 如果我想自己使用該程序,我可以將其編譯為 a.jar,它將在 JDK 附帶的 JVM 上運行,就像 ZD52387880E1EA22817A72D375921381 運行時一樣

現在,我無法理解的棘手部分來了:在其他機器上部署

  1. 創建一個 module-info.java 列出該程序的依賴項
  2. 像往常一樣使用 eclipse 對話框編譯 a.jar
  3. 使用 jlink 為該程序創建一個運行時映像,以便與它一起發布

...但是現在呢?

這些圖像如何使程序工作? 我讀到它們只是該程序的某種小型 JRE,這將消除在目標系統上安裝 Java 的需要,但這將如何跨平台?

還是它們是可從官方站點下載的 JRE 的某種“補丁”? 這可以解釋為什么它仍在更新,但它不會消除在目標機器上安裝 Java 的需要。

TL;博士:

  • 到目前為止我的理解有什么問題嗎?
  • jlink-ed 運行時映像如何工作?
  • 它們是如何跨平台的?
  • 目標機器是否仍需要任何類型的預安裝 Java 相關軟件,例如運行時/鏈接中提供的運行時?

非常感謝您閱讀我的文字牆,並提前感謝您的回答!

編輯:使問題四更清楚。

Slaw 在對原始問題的評論中回答了我所有的問題,因此我將在此答案中對其進行總結。

  • 到目前為止我的理解是正確的
  • jlink使用程序所需的模塊創建一個 mini-JRE,如module-info.java中所指定
  • 他們不是,一個人需要例如 Linux-JDK 來創建一個特定於 linux 的版本等。
  • 運行/解釋程序所需的所有文件都包含在運行時映像中

也感謝您提供的外部信息! 我會確保研究JMOD ,從我讀到的關於jpackage的內容來看,這是一件非常令人興奮的事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM