Java 9模塊化特性及工具探討

Java 9模塊化特性及工具探討

  • 版權聲明:本文爲博主chszs的原創文章,未經博主允許不得轉載。

Java 9於2017年九月下旬發佈。隨着Java 9的發佈,它變得模塊化了,並通過模塊化提高其可伸縮性和性能。模塊化是一個普遍的概念。在軟件中,它適用於編寫和實現一個程序或作爲獨立模塊的計算系統,而不是一個單一的、單體式的設計。在模塊化的幫助下,程序員可以在特定的sprint週期或項目中獨立地進行功能測試,並行參與開發工作。這在整個軟件開發生命週期中都會提高效率。

但並不是所有的Java工具都支持Java 9的模塊化功能。本文概述了支持Java模塊化的特性,並提供了支持Java 9新模塊化功能的工具列表。

支持模塊化的特性:

Java 9是獨特的,因爲它在整個JDK中引入了模塊化組件和片段。支持模塊化的主要特點包括:

  1. 模塊化源代碼

JRE和JDK將重新安排到Java 9中的可互操作模塊中,這支持創建可在小型設備上執行的可擴展運行時。

  1. 構建時執行

在Java 9中,構建系統將通過JEP 201進行編譯和實施模塊邊界。

  1. 部署工具

在Jigsaw項目中提供了工具,在部署時支持模塊化邊界、約束和依賴關係。

  1. 分段的代碼緩存

它不是一個嚴格的模塊化設施,但是Java 9新的分段代碼緩存將遵循模塊化的思想,並享有一些相同的好處。

適用於Java 9模塊化特性的工具:

  1. Apache Ant

Apache Ant是一個Java庫和命令行工具,用於構建Java應用程序。Ant項目管理委員會早些時候確保Ant將在2017年2月的Ant 1.10.1版本上運行Java 9。Java 9和模塊化速度正在加快。它支持javac、java和JUnit任務的模塊路徑和相關選項。

  1. Apache Maven

Apache Maven 3.7版本開始支持Java 9和模塊化。

  1. Eclipse IDE

Eclipse IDE是一個開源工具,從2017年6月的Oxygen版本開始支持Java 9。但是,要使用Java 9模塊,Java開發人員需要將以下vmargs(JVM的命令行參數)添加到eclipse.ini:-add-modules = ALL-SYSTEM。項目可能無法運行,因爲類型正在用在java.base或java.se.ee中,例如javafx.Base中的類型。在這種情況下,根據Eclipse文檔,你必須弄清楚需要使用-add-modules添加哪些模塊。

  1. JetBrains IntelliJ IDEA

從2017.2版開始,流行的IntelliJ IDEA開發環境開始全面支持Java 9的模塊化。開發人員可以構建Java 9的模塊化項目,就像使用模塊路徑而不是類路徑一樣。還支持module-info.java文件的開發,以及這些文件的代碼完成和快速修復。

尚未準備好支持Java 9模塊化特性的工具:

  1. Gradle

Gradle軟件構建工具尚未完全支持Java 9,儘管其開發人員預計在2018年可以這樣做。目前,Gradle使用的開發人員可以通過變通方法嘗試模塊化。

  1. Jenkins

用於軟件開發項目的持續集成和部署的Jenkins開源自動化服務器尚不支持Java 9模塊化仍在進行中。Cloud Bees首席技術官Kohsuke Kawaguchi表示,Cloud Bees在Jenkins社區領導着與Jenkins Java 9兼容的工作。但他沒有給Jenkins提供Java 9兼容性的大致日期。

總結

在本文中,我們討論了Java 9的模塊化特性,還介紹了適用於這些新特性的工具。最後,列出了一些尚未準備好支持Java 9模塊化特性的工具。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章