使用 Linux 子系統部署 Node、Gradle 項目的構建工具

最近的一個項目,由三個 Gradle「Java」工程以及一個 Node「Vue.js」工程組成。爲了使用 Linux 下的各類工具提高效率,本文探討 Linux 子系統的使用及在該系統下,Java、Node.js、Gradle 等工具的配置。並在後一篇文章中,探討該項目的一鍵構建、打包腳本,從而根本上提高開發效率。html

1. Windows 10 秋季創意者更新下的 Linux 子系統

我目前使用的操做系統是最新的 Windows 10 秋季創意者更新(Version 1709),打開 Microsoft Store 並搜索 Linux,而後選擇本身喜歡的 Linux 發行版安裝便可,我安裝的是 Ubuntu。java

Microsoft Store 中選擇本身喜歡的 Linux 子系統

Linux 子系統安裝完畢後,使用開始屏幕找到相應應用的磁貼,並點擊打開;或者使用命令行,運行命令 bash,都可打開已經安裝的 Linux 子系統。node

打開 Ubuntu 子系統

2. 相關工具的部署要點

如今去各自的官方網站下載 JavaNode.jsGradle 這三個工具所對應的 Linux 版本。其中 Java、Node.js 擁有獨立的 Linux 版本,Gradle 的 Windows、Linux 版本是一體的。linux

因爲在啓動 Ubuntu 後,Windows 10 中的環境變量 PATH 已被自動添加至 Ubuntu 中,因此這些工具的安裝、以及添加環境變量有兩種方法:bash

  1. 這些工具直接在 Windows 下解壓,並添加至 Windows 系統環境變量中。工具的 Windows、Linux 版本由 Windows 統一管理,簡化操做、界面友好,而且 Gradle 只需添加一個環境變量。

Windows 下環境變量的配置

  1. 工具的 Linux 版本移入 Ubuntu 中,並在其中添加 Ubuntu 環境變量。注意 Windows 的環境變量最早被檢索到,爲避免衝突,Windows下的 Gradle 需進入 bin 目錄,刪掉用於 Linux 的 Gradle 腳本。

Gradle 的兩系統執行腳本在一塊兒

因爲 Linux 子系統仍是有少量不一樣,Windows 與 Linux 結合太緊密可能會出現 Bug,就算不是操做系統的 Bug,也可能因爲工具未考慮到這樣的使用方式致使出現 Bug,好比對於一體化的 Gradle,我使用方法 1 時,Gradle 確實有偶發的 Bug,將 Gradle 獨立開來問題得以解決。oracle

3. 部署並配置 Java、Node.js、Gradle 的環境變量

Java、Node.js、Gradle 下載完畢後,在 bash 中指向下載目錄,並將其複製到 home 目錄並解壓:工具

# 將工具從 Windows 目錄複製至 home 目錄中
cp jdk-8u162-linux-x64.tar.gz /home/lml/soft/
cp node-v9.5.0-linux-x64.tar.xz /home/lml/soft/
cp gradle-4.5.1-bin.zip /home/lml/soft/

cd /home/lml/soft/

# 解壓縮各工具
tar -zxvf jdk-8u162-linux-x64.tar.gz jdk1.8.0_162/
tar xvJf node-v9.5.0-linux-x64.tar.xz
unzip gradle-4.5.1-bin.zip

#添加環境變量,並使設置當即生效
vi ~/.bashrc
source ~/.bashrc

上述命令修改 ~/.bashrc 文件時,在該文件末尾新增以下腳本內容:開發工具

NODE_HOME=/home/lml/soft/node-v9.5.0-linux-x64
JAVA_HOME=/home/lml/soft/jdk1.8.0_162
GRADLE_HOME=/home/lml/soft/gradle-4.5.1

export NODE_HOME
export JAVA_HOME
export GRADLE_HOME

PATH=$PATH:$JAVA_HOME/bin:$NODE_HOME/bin:$GRADLE_HOME/bin
export PATH

腳本生效並執行後,在 bash 中能夠看到上述三個工具都可識別成功:gradle

查看工具的配置結果

從上圖能夠看出,Windows 環境變量也在其中,也可經過在 /usr/bin 目錄下添加軟連接的方式,識別相關命令:網站

添加 Java 的軟連接

4. 使用 SDKMAN! 管理各開發工具

在參考 Gradle 的官方文檔時,官方推薦使用 SDKMAN! 安裝、管理 Gradle,SDKMAN! 用於多種版本開發工具的切換、安裝和卸載的工做,包括 Gradle、Java 等 Jvm 系的工具。因爲未科學的上網,該工具速度不佳,不過經過文檔能看到該工具簡單易用。

參考連接

  1. Windows 10 內置 Linux 子系統初體驗
  2. Ubuntu 設置環境變量並當即生效
  3. 設置 Linux 環境變量的方法和區別 (Ubuntu)
  4. SDKMAN! 官網
  5. SDKMAN! 工具的使用
  6. SDKMAN! 簡明安裝教程
相關文章
相關標籤/搜索