開發部署 Spring Cloud 微服務框架,需要先確定 Spring Cloud 的相關環境版本,主要包含:Spring Cloud、Spring Cloud Netflix、JDK、JRE、Java Version等相關版本,以及環境的配置。
現在最新版本 Java 10、Spring Boot 2.0、Spring Cloud Finchley.M9(已倫敦地鐵站為命令規則),但這些版本還不太穩定,而且相關的兼容也不是很好,問題的解決方案也比較少。
今天花了大概一天的時間,嘗試了各種版本的兼容,以及使用部署的問題,最終確定了下面這套版本,比較相對穩定。
- Spring Cloud:Edgware.SR3(http://projects.spring.io/spring-cloud/),和 Spring Boot 版本關聯,可在官網進行查看。
- Spring Cloud Netflix:1.4.4.RELEASE
- Spring Boot:1.5.10.RELEASE
- JDK:Java SE Development Kit 8u162(http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html),也就是 jdk1.8.0_162。
- JRE:Server JRE (Java SE Runtime Environment) 8u162(http://www.oracle.com/technetwork/java/javase/downloads/server-jre8-downloads-2133154.html)
- Java Version:1.8,和 JDK 對應,
如果使用其他版本的話,會出現一些問題,比如下面:
- SpringCloud異常(Euruka):Application run failed java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder
- How to resolve java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException in Java 9
- com.sun.jersey.api.client.ClientHandlerException: java.net.ConnectException: Connection refused: connect
- java.lang.NoClassDefFoundError: javax/activation/DataHandler
- Unable to start embedded container; nested exception is org.springframework.boot.context.embedded.EmbeddedServletContainerException: Unable to start embedded Tomcat
服務器配置 JRE 環境
使用 wget 命令,在官網下載對應的 Server JRE。
$ wget -O server-jre-8u172-linux-x64.tar.gz http://download.oracle.com/otn-pub/java/jdk/8u172-b11/a58eab1ec242421181065cdc37240b08/server-jre-8u172-linux-x64.tar.gz?AuthParam=1525855768_4dab01f83fc36483df07dbbdc363c1af
創建安裝目錄:
$ sudo mkdir -p /usr/local/java
解壓文件到指定目錄:
$ sudo tar -zxvf server-jre-8u172-linux-x64.tar.gz -C /usr/local/java/ --strip-components=1
編輯配置文件:
$ sudo vi /etc/profile
將下面配置添加到配置文件中:
# JRE configuration
export JAVA_HOME=/usr/local/java
export JRE_HOME=${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
# End JDK configuration
生效及測試:
$ source /etc/profile
$ java -version
Mac 配置 JDK 環境
在官網下載對應的 Mac JDK 版本。
直接安裝成功后(目錄:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk)。
編輯配置文件:
$ sudo vi /etc/profile
將下面配置添加到配置文件中:
# JDK configuration
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home
export JRE_HOME=${JAVA_HOME}
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
# End JDK configuration
生效及測試:
$ source /etc/profile
$ java -version
IntelliJ IDEA 選擇添加 JDK 即可:
IntelliJ IDEA 修改當前項目的 JDK 版本:
