1. 程式人生 > >Java學習筆記9. Debian 9下更換Open JDK 8 為 Oracle JDK 9

Java學習筆記9. Debian 9下更換Open JDK 8 為 Oracle JDK 9

Open JDK 是許多Linux系統的預設JDK,但是Java開發一般還是使用Oracle JDK。
所以,有時候我們需要把系統的預設的JDK換成Oracle的。

具體可以分三步:
1. 下載並解壓Oracle JDK到本地電腦目錄
2. 設定系統變數並使其生效
3. 使用alternatives機制設定Oracle JDK為系統預設的JDK

下載----解壓縮----安裝


首先是下載,需要到Oracle的官方頁面下載壓縮包,選擇*.tar.gz 檔案下載

下載之後解壓縮
在bash裡進入下載檔案所在的目錄,使用下列命令進行解壓縮:
tar -zxvf 檔名.tar.gz
解壓縮之後的檔案都在jdk-9.0.4裡

我們需要把這個資料夾放在指定目錄裡:
使用root使用者登入,然後用mv命令移動整個資料夾到指定目錄
mv 資料夾名 /usr/java/java9


配置環境變數

用Vi把下列三行環境變數配置到 /root/.bashrc 和 /home/username/.bashrc 下面(*username是你當前的使用者名稱)裡面
export JAVA_HOME=/usr/java/java9
export CLASSPATH=.:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin


使用下列語句使配置檔案生效
source /root/.bashrc
source /home/username/.bashrc

更替預設JDK
[email protected]:/home/max# java -version
openjdk version "1.8.0_151"
OpenJDK Runtime Environment (build 1.8.0_151-8u151-b12-1~deb9u1-b12)
OpenJDK 64-Bit Server VM (build 25.151-b12, mixed mode)


使用update-alternatives 命令維護系統的軟連線
#update-alternatives --install /usr/bin/java java /usr/java9/bin/java 1200
#update-alternatives --install /usr/bin/javac javac /usr/java9/bin/javac 1200
*這裡1200是優先順序引數,越大優先順序越高

使用update-alternatives 命令選擇預設的java和javac命令目錄
#update-alternatives --config java
#update-alternatives --config javac



下面用java -version命令來驗證一下

OK, 成功了。

相關推薦

Java學習筆記9. Debian 9更換Open JDK 8 Oracle JDK 9

Open JDK 是許多Linux系統的預設JDK,但是Java開發一般還是使用Oracle JDK。所以,有時候我們需要把系統的預設的JDK換成Oracle的。具體可以分三步:1. 下載並解壓Orac

Java學習筆記33:陣列標越界

陣列下標越界 :在引用陣列元素時,使用的下標超過了該陣列下標的應有範圍。 但應注意的是: C/C++不對陣列做邊界檢查。 可以重寫陣列的每一端,並寫入一些其他變數的陣列或者甚至是寫入程式的程式碼。不檢查下標是否越界可以有效提高程式執行的效率,因為如果你檢查,那麼編譯器必須在生成的目的碼中

5.9 j(java學習筆記)強軟弱虛引用及WeakHashMap、IdentityHashMap、EnumMap

一、引用分類 強:執行垃圾回收機制後也不回收,程式出現記憶體溢位也不回收。 軟:在垃圾回收機制執行時判斷記憶體是否已滿,如果記憶體已滿則回收,記憶體充足則不回收。 弱:垃圾回收機制執行後不論記憶體是否充足都會立即回收。 虛:虛引用和沒有引用一樣,必須配合引用佇列使用。   我們來看例子:

java學習筆記(9)

1:final關鍵字(掌握) (1)是最終的意思,可以修飾類,方法,變數。 (2)特點: A:它修飾的類,不能被繼承。 B:它修飾的方法,不能被重寫。 C:它修飾的變數,是一個常量。 (3)面試相關: A:區域性變數 a:基本型別 值不能發生改變 b:引用型別 地址值不能發生改變,但是物

java學習筆記9-IO流)

1.FileWriter package daigua8; import java.io.FileWriter; import java.io.IOException; /* 輸出流寫資料的步驟: * A:建立輸出流物件 * B:呼叫輸出流物件的寫資料的方法 * C:釋放

9.1(java學習筆記)正則表示式

一、正則表示式   1.1正則表示式     正則表示式是描述一種規則,通過這個規則可以匹配到一類字串。     2.1正則語法     2.1.1普通字元:字母、數字、下劃線、漢字以及沒有特殊意義的符號都是普通字元。       正則表示式為普通字元時,直接匹配該字元。     

Java學習筆記9)Objects and Classes

9.1面向物件程式設計的基本概念 1、面向物件程式設計(Object-oriented programming, OOP) 是以物件為基本單位來搭建程式的程式設計方法。術語物件(object)指的是實體(entity),例如學生,桌子,圓,按鈕。 2、物件具有唯一的標識,狀

Java學習筆記9

註意事項 字母 多個 學習 類型變量 dog div 類型 java學習筆記 final關鍵字; (修飾符) final關鍵字的用法: final關鍵字修飾一個基本類型的變量時,該變量不能重新賦值,第一次的值為最終的。 final關鍵字修飾一個引用類型變量時,該變量不能

java學習筆記9)-Java I/O系統

第九章 Java I/O系統 1、題目 1.1、 何為流?根據流的方向,流可分為哪兩種? 流表示檔案傳播的方向和傳播的檔案資訊的集合。根據流的方向,流可分為輸入與輸出流。 PPT:流是在計算機的輸入、輸出操作中流動的資料序列。 1.2、 I

Java學習筆記9(面象對象9:多態)

直接 引用類型 nds 指向 ati 向上轉型 true 擴展 繼承 多態概述     多態是繼封裝、繼承後,面對對象的第三大特性。     現實事物經常會出現多態,如學生,學生是人的一種,則一個具體的同學張三既是學生也是人,即出現兩種形態。     Java作為面向

Java學習筆記——Linux安裝配置MySQL

code names 刪掉 set 影響 per install nod 設置 山重水復疑無路,柳暗花明又一村               ——遊山西村 系統:Ubuntu 16.04LTS 1\官網下載mysql-5.7.18-linux-glibc2.5-x86

java學習筆記(三)--(物件程式設計-類與方法

***重要*** 程式碼塊     定義:使用{}定義的一段程式碼     根據程式碼塊出現的位置以及關鍵字不同,分為以下四類程式碼塊 普通程式碼塊        

java學習筆記(七)--(抽象類與介面)(介面的定義與使用)

介面的定義與使用 介面優先原則:在一個操作即可以使用抽象類又可以使用介面的時候,優先考慮使用介面。 介面的定義(JDK8以前):介面就是抽象方法與全域性常量的集合(純粹版的抽象類),interfance關鍵字定義介面 interface IMessage{

Java學習筆記】54:CentOS安裝MySQL的JDBC驅動並嘗試連線

準備工作 開啟MySQL服務 [root@hostlzh lzh]# mysqld_safe & [1] 21768 [root@hostlzh lzh]# 180209 12:55:11 mysqld_safe Logging to '/var

java學習筆記——String類

通過 ray [] 原理 log spl 2.3 -s 長度 一、概述 ·字符串是一個特殊的對象 ·字符串一旦初始化就不可以被改變 ·String str = "abc"; ·String str1 = new String("abc"); 有什麽區別? package

java學習筆記——java中對象的創建,初始化,引用的解析

初始 學習筆記 style article 學習 base 表達 如果 bsp 如果有一個A類。 1、例如以下表達式: A a1 = new A(); 那麽A是類,a1是引用。new A()是對象。僅僅是a1這個引用指向了new A()這個對象。 2、又如: A

Java學習筆記--鏈表

引用變量 nts mage 集合 tran 分享 isp exce pub 心在山東身在吳,飄蓬江海漫嗟籲。 他時若遂淩雲誌, 敢笑黃巢不丈夫。                ——水滸傳 先上源代碼,LinkedList類: 1 private static class

Java學習筆記——淺談數據結構與Java集合框架(第一篇、List)

技術分享 emp 鏈表 adc 下標 -c nod nal integer 橫看成嶺側成峰,遠近高低各不同。不識廬山真面目,只緣身在此山中。               ——蘇軾 這一塊兒學的是雲裏霧裏,咱們先從簡單的入手。逐漸的撥開迷霧見太陽。本次先做List集合的三

JAVA學習筆記(1)——a++與++a的區別

col int 演示 opera 解析 代碼 數據 ++i div 需求:此博客用於解釋i++與++i的區別。 過程: 1、名稱解釋 ++:自增,即在原有數據基礎上+1,再賦給原有數據。 2、程序演示 (1)代碼: 1 class OperateDemo 2 { 3

Java學習筆記——泛型

ray dem 想想 string stub odt 好處 reac test 一、什麽是泛型?為什麽要使用泛型? 且看代碼: 1 public class GenericsDemo { 2 3 public static void main(String