1. 程式人生 > >現代Java服務端開發核心技術之開發工具箱

現代Java服務端開發核心技術之開發工具箱

菜單 utf x86_64 version 能夠 false 同時 preview cin

現代Java服務端開發核心技術之開發工具箱

現代Java服務端開發核心技術

2.1 開發工具概述

俗話說,工欲善其事必先利其器,掌握一些日常開中常用的工具軟件能夠大大提開發效率,工具本身的目的也是解放生產力。在安裝各種軟件時註意如果沒有特殊需要不必使用最新版本,尤其是操作系統,例如當前(2018/10/12)最新版的macOS是10.14,但是運行在macOS之上的其他應用軟件可能還沒有及時做兼容新系統的版本,可能在系統升級之後無法正常使用,因此推薦在新系統正式推出半年後再升級最為穩妥。
而且軟件開發本來就是大型團隊合作,在企業開發中,軟件的版本需要跟團隊的保持一致,避免因為版本不一致導致出現不必要的問題。

2.1.1 開發工具安裝

Windows系統的開發工具通常都是.exe或者是.msi格式,只需要下載後雙擊即可進行安裝配置,通常可以自定義安裝路徑,有些軟件會連帶安裝其他不必要的軟件(全家桶),安裝時註意腳下留心。

macOS系統的開發工具通常都是.dmg格式,雙擊打開之後通常都是.kpg或者是.app,如果是.kpg,需要根據提示進行安裝,如果是.app,只要直接拖放到Appliactions文件夾即可。

2.2 操作系統篇

如果你是剛從京東或者天貓購買了筆記本電腦或者一體機(硬件配置推薦CPU Intel 8代 i9+內存32G +固態512SSD),那麽很有可能是預裝了Windows10或者macOS操作系統,因為如果你不是一名資深玩家,擺在你面前的裸機可能什麽都做不了,而開發工具集都是運行在操作系統之上的。

2.3 Java開發核心工具

2.3.1 JDK(Java Development Kit)

2.3.1.1 JDK概述

JDK(Java Development Kit)是Oracle公司(原Sun公司在2010年被Oracle公司以74億美金收購)推出包含了開發和運行Java的工具集合,其架構圖如下圖所示
技術分享圖片
根據架構圖得知JDK包含了JRE,因此想要開發和運行Java程序,只需要安裝JDK即可。

2.3.1.2JDK下載

想要開發Java程序,必須要針對操作系統下載對應的JDK版本,目前互聯網企業中使用最為廣泛的JDK版本為JDK8,最新的JDK版本為JDK11,也是一個Oracle長期支持的JDK版本,下載界面如下圖所示
技術分享圖片


JDK提供了各個系統的版本實現,這就是Java實現跨平臺運行的根本原因,因為JVM負責和各個底層操作系統交互,針對不同的操作系統有不同的實現。

如果想了解更多關於Java的信息,可以訪問官網的文檔 ,作為開發者來講,需要學會查閱API文檔,以及了解Java語言規範和JVM規範

macOS版本JDK11下載點我

Windows版JDK11下載點我

2.3.1.3 JDK安裝

無論是Windows還是macOS下的JDK安裝都極其簡單,只需要跟著JDK提示安裝即可,macOS的安裝步驟如下

第一步:雙擊jdk-11_osx_bin.dmg,如下圖所示
技術分享圖片
第二步:雙擊JDK11.pkg,如下圖所示
技術分享圖片
第三步:開始安裝JDK11介紹
技術分享圖片
第四步:選擇安裝類型後並安裝
技術分享圖片
在這個過程中會提示輸入密碼
技術分享圖片
第五步:查看摘要
技術分享圖片
至此JDK的安裝就已經完成了,macOS中JDK11默認安裝的路徑是
/Library/Java/JavaVirtualMachines/jdk-11.jdk,如果想要卸載JDK11,只需要使用rm -rf 命令刪除該目錄即可,如下所示。

$ rm -rf /Library/Java/JavaVirtualMachines/jdk-11.jdk/

如果想知道java編譯環境和運行環境的版本,可以在終端上使用javac和java命令,命令輸出結果如下所示。

$ javac -version
javac 11
$ java -version
java version "11" 2018-09-25
Java(TM) SE Runtime Environment 18.9 (build 11+28)
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11+28, mixed mode)
  • JDK配置
    安裝JDK完成以後,一般要在操作系統的環境變量中配置JAVA_HOME環境變量,並把該變量的路徑配置到系統的PATH環境變量中。因為使用Java開發的其他工具(例如Maven、Tomcat),在運行時需要依賴JAVA_HOME這個環境變量,如下所示,當輸入mvn命令查看版本信息時提示需要配置JAVA_HOME。
$ mvn --version
The JAVA_HOME environment variable is not defined correctly
This environment variable is needed to run this program
NB: JAVA_HOME should point to a JDK not a JRE

如果想要在macOS中配置JAVA_HOME,並添加到PATH中,你需要熟悉vim編輯器的基本使用,以及macOS的常用命令和profile文件。

第一步 在終端中輸入如下命令

$ sudo vim /etc/profile
Password:

然後根據提示輸入root用戶的密碼即可開始在profile文件中添加如下內容

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

需要註意的是執行sudo vim /etc/profile打開profile文件時,vim此時是命令模式,無法修改文件,如果想要修改文件只需要按鍵盤的i鍵即可。
修改完成後按esc退出編輯模式,並按:wq保存修改的profile文件。

如果想要剛才的命令生效,還需要執行以下命令

$ source /etc/profile

然後使用echo命令查看之前設置的JAVA_HOME,如下所示

MacBookPro:~ tony$ echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home

當再次輸入mvn命令查看版本時就會正常顯示如下信息了

MacBookPro:~ tony$ mvn --version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /Users/tony/Documents/workspace/java/tools/apache-maven-3.5.4
Java version: 11, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.6", arch: "x86_64", family: "mac"

安裝JDK時建議詢問公司做運維的同事,生產環境使用的什麽版本,例如jdk1.8.0_181,目前絕大多數應用都是基於或者逐漸向JDK1.8構建的,而且它是繼JDK1.5以後變化最大的版本。

如果想要在macOS上基於命令行運行程序,並且已經安裝了多個JDK,切換JDK的版本(例如1.8)可以通過如下命令進行

$ /usr/libexec/java_home -v 1.8 --exec javac -version

關於更多平臺的JDK安裝可以參考Oracle官方提供的安裝說明文檔
JDK11
JDK8

2.3.2 Maven

2.3.2.1 Maven概述

Maven是開源組織Apache使用Java語言開發的,主要是用來管理Java項目的依賴和構建,因為在後期的Java應用開發中會大量依賴第三方類庫、框架的jar包,在沒有Maven之前都是手動將類庫、框架的jar包拷貝到項目中,而Maven的出現只需要通過在項目中配置pom.xml就可以解決項目的依賴以及構建任務。

2.3.2.2 Maven下載

Maven官網提供了Maven的源碼和二進制版本的下載,如果想要了解Maven是如何實現的,可以下載源碼包,如果僅僅是想要使用Maven,下載二進制包即可。

2.3.2.3 Maven安裝和配置

Maven的安裝非常簡單,只需要將下載的apache-maven-3.5.4-bin.zip解壓到你想要存放的目錄(例如/Users/tony/Documents/workspace/java/tools/apache-maven-3.5.4)即可。

然後和剛才配置JDK的方式一樣,使用命令 sudo vim /profile/etc,添加如下內容,按esc退出編輯模式,然後按:wq保存修改的內容。

export MAVEN_HOME=/Users/tony/Documents/workspace/java/tools/apache-maven-3.5.4
export PATH=$PATH:$MAVEN_HOME/bin

接著輸入如下命令讓修改的配置生效

$ source /etc/profile

接著可以使用mvn命令查看版本信息

MacBookPro:JavaVirtualMachines tony$ mvn --version
Apache Maven 3.5.4 (1edded0938998edf8bf061f1ceb3cfdeccf443fe; 2018-06-18T02:33:14+08:00)
Maven home: /Users/tony/Documents/workspace/java/tools/apache-maven-3.5.4
Java version: 11, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "10.13.6", arch: "x86_64", family: "mac"

同時也可以使用echo $MAVEN_HOME查看maven安裝目錄

MacBookPro:JavaVirtualMachines tony$ echo $MAVEN_HOME
/Users/tony/Documents/workspace/java/tools/apache-maven-3.5.4

然後接下來修改maven本身的配置,它的配置采用了名為setting.xml文件,路徑位於${MAVEN_HOME}/conf/setting.xml,可以使用任意的文本編輯器打開它,然後修改本地倉庫的配置以及添加阿裏雲的私服。

Maven默認的本地倉庫配置會在{user.home}/.m2/repository錄來存放jar包,這裏將路徑修改為/Users/tony/Documents/workspace/java/tools/maven_repository

   <localRepository>/Users/tony/Documents/workspace/java/tools/maven_repository</localRepository>

因為網絡原因,有時候jar包下載到本地會非常慢,所以添加國內的阿裏雲地址。


  <mirror>
      <id>alimaven</id>
      <name>aliyun maven</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
      <mirrorOf>central</mirrorOf>        
    </mirror>

2.3.3 Git

2.2.3.1 Git概述

Git是Linus Torvalds采用C語言實現的分布式版本控制系統,最初用來管理Linux代碼,後來各大互聯網公司紛紛采用它作為項目版本控制工具。

2.2.3.2 Git下載

Git官網提供了各大操作系統的版本下載,還提供了詳細的使用文檔

mac下載

2.2.3.3 Git安裝和基本配置

Git的安裝和JDK的安裝步驟類似,根據軟件的提示進行安裝即可。
然後可以使用git -version查看git安裝的版本,命令如下所

 $ git --version
git version 2.19.0

在使用Git之前,需要配置郵箱以及用戶名,命令如下所示,在提交項目代碼時可以隨時定位誰的問題。

$ git config --global user.name "Your Name"
$ git config --global user.email "[email protected]"c

2.3.4 GitHub

GitHub是一個免費、基於Git的開源項目托管站點,全世界許多公司的開源項目(例如Spring,Mybatis,阿裏巴巴,美團點評等等)的源碼都存放在GitHub,個人也可以上傳自己的項目到GitHub,可以為自己的就業簡歷加分。

如果想要使用GitHub,首先需要訪問官網,註冊賬號後即可使用。

2.3.5 IntelliJ IDEA

2.3.5.1 IntelliJ IDEA 介紹

IntelliJ IDEA是來自捷克的Jetbrains公司開發的Java開發工具。有旗艦版和社區版兩大版本,相對社區版而言旗艦版的功能更加豐富。官網提供了兩個版本之間差異的詳細比較。擅長企業級應用、移動應用以及Web應用開發。

支持MacOS,Windows7+,Linux(Ubuntu14)三大主流操系統,支持主流技術(Maven,Git,Tomcat...)和框架(Spring,SpringBoot,SpringCloud...),同時支持Scala,Groovy等其他基於JVM的編程語言。

通過插件可以支持Python、Kotlin,PHP等編程語言以及數據庫訪問等等,還有日常開發中常用的GitHhub,MarkDown...諸多你想要的好用的工具。

想了解更多信息,可以參考官網信息:http://www.jetbrains.com/idea/

官網幫助文檔 http://www.jetbrains.com/idea/documentation/
有些內容需要FQ...

為了在日常開發中使用IntelliJ IDEA更加順利,這裏列出來必備的硬件以及系統要求。

硬件: Intel i7+16/32G+256/512SSD+1070GTX

軟件:Windows7+/Linux(Ubuntu14.04)/MacOS10.10+

2.3.5.2 Jetbrains Toolbox的使用

Jetbrains公司開發了用於方便下載和配置Jetbrains公司產品的工具箱-Jetbrains Toolbox,通過它我們就可以更加方便、快捷的下載、安裝和配置IntelliJ IDEA以及其他產品(例如DataGrip,Webstorm,Pycharam,PhpStorm等等)以及實現項目管理。

macOS版Toolbox下載
macOS版的toolbox安裝十分簡單,雙擊下載的jetbrains-toolbox-1.11.4269.dmg包,然後如下圖所示
技術分享圖片

toolbox啟動界面
技術分享圖片
toolbox設置界面
技術分享圖片

通過tools面板選擇下載Intellij IDEA 旗艦版
等待少許時間就會自動完成下載和安裝
技術分享圖片

2.3.5.3 IntelliJ IDEA 設置

首先選擇設置菜單,如下圖所示
技術分享圖片
然後進入設置界面,直接選擇修改JVM Options
技術分享圖片

文件內容如下所示
如果你的筆記本內存是16G以上,可以參考如下配置

-Xms512m
-Xmx1500m
-XX:ReservedCodeCacheSize=460m
-XX:+UseCompressedOops
-Dfile.encoding=UTF-8
-XX:+UseConcMarkSweepGC
-XX:SoftRefLRUPolicyMSPerMB=50
-ea
-Dsun.io.useCanonCaches=false
-Djava.net.preferIPv4Stack=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-Xverify:none

-XX:ErrorFile=$USER_HOME/java_error_in_idea_%p.log
-XX:HeapDumpPath=$USER_HOME/java_error_in_idea.hprof
-Dide.no.platform.update=true
-javaagent:/Users/tony/Documents/workspace/java/tools/jetbrains/JetbrainsCrack-3.1-release-enc.jar

其中-javaagent:/Users/tony/Documents/workspace/java/tools/jetbrains/JetbrainsCrack-3.1-release-enc.jar 用於破解IntelliJ IDEA,需要自行下載
JetbrainsCrack-3.1-release-enc.jar,如果你的經濟能力OK的話,請支持正版軟件。

  • IntelliJ IDEA 變更主題
    從Toolbox中啟動IntelliJ IDEA後,點擊Preference進入設置項,如下所示
    技術分享圖片

首先更改IntelliJ IDEA的主題,如下圖所示,點擊右下角的Apply菜單後主題會變更。
技術分享圖片

2.3.5.4 IntelliJ IDEA插件安裝

首先選擇插件菜單
技術分享圖片
然後搜索對應的插件安裝即可,如下圖所示
技術分享圖片

需要註意的是每次安裝插件都需要重啟IntelliJ IDEA後才會生效。

IntelliJ IDEA常用插件列表

  • Alibaba Java Coding Fuidelines
  • A8Translate
  • FindBugs-IDEA
  • CheckStyle-IDEA
  • Lombok
  • .gitignore

2.3.5.3 IntelliJ IDEA 集成Maven

因為Maven是基於命令行使用的,對於初學者來說使用圖形化界面操作Maven,更加容易理解,這也是將Maven集成到IntelliJ IDEA的目的,
首先需要知道IntelliJ IDEA的默認Maven配置,如下圖所示
技術分享圖片

我們可以通過Configure->Project Defaults->Settings菜單
技術分享圖片
來設置全局Maven,那樣以後不用每個項目都需要重新設置Maven了,如下圖所示
技術分享圖片

2.3.5.3 IntelliJ IDEA集成Git

在IntelliJ IDEA中集成Git非常簡單,只需要配置Git的安裝路徑即可。
首先啟動IntelliJ IDEA,選擇Configure->Preferences菜單後,如下圖所示
技術分享圖片
IntellJ IDEA 會從默認的路徑下查找之前安裝的Git。

2.3.5.3 IntellliJ IDEA 集成Github

在IntelliJ IDEA中集成GitHub非常簡單,只需要填寫你之前在GitHub上註冊的賬號信息即可,具體流程如下
1.在Preference的菜單搜索欄中找到GitHub
技術分享圖片
2.輸入你的賬號信息
技術分享圖片
3. 添加成功界面
技術分享圖片

2.4 日常應用

2.4.1 即時通訊

  • 微信、企業微信
  • 釘釘
  • QQ/TIM

2.4.2 筆記

  • 小書匠
  • 印象筆記
  • 簡書
  • CSDN博客
  • Gitbook Editor
  • 知乎

2.4.3 文本編輯器

  • Visual Studio Code
  • Atom
  • UltraEdit

2.4.4 程序員門戶

  • 博客園
  • CSDN
  • 開源中國
  • 51CTO
  • SegmentFault
  • ChinaUnix

2.4.5 裝機必備

  • Chrome/Opera
  • PotPlayer/IINA(macOS)
  • 百度網盤
  • 福昕PDF
  • 網易郵箱大師
  • 網易雲音樂
  • TeamViewer
  • WinRAR
  • 迅雷下載
  • Office 2016/WPS2019

2.4.6 畫圖

  • Visio
  • EdarwMax
  • Xmind

2.4.7 虛擬機

  • VM Ware WorkStation
  • Parallels Desktop(macOS)

2.5 Java開發必備工具

2.5.1 MySQL客戶端

  • Navicat
  • DataGrip
  • SQLyog(Windows)

2.5.2 Linux系統客戶端

  • SecureCRT
  • XShell

2.5.3 Redis客戶端

  • Redis Desktop Manager(Windows)
  • Medis(macOS)

2.5.4 線上充電站點

  • 慕課網
  • 51cto學院
  • csdn學院
  • 龍果學院
  • 騰訊課堂

現代Java服務端開發核心技術之開發工具箱