java環境變數配置

来源:http://www.cnblogs.com/tqq-m/archive/2016/01/30/5171514.html
-Advertisement-
Play Games

本文藉鑒於他人 學習java的第一步就要搭建java的學習環境,首先是要安裝JDK,JDK安裝好之後,還需要在電腦上配置"JAVA_HOME"、"path"、"classpath" 這三個環境變數才能夠把java的開發環境搭建好。在沒安裝過jdk的環境下,path環境變數是系統變數,本來存在的,而J


  本文藉鑒於他人

  學習java的第一步就要搭建java的學習環境,首先是要安裝JDK,JDK安裝好之後,還需要在電腦上配置"JAVA_HOME"、"path"、"classpath" 這三個環境變數才能夠把java的開發環境搭建好。在沒安裝過jdk的環境下,path環境變數是系統變數,本來存在的,而JAVA_HOME和classpath是不存在的。

  首先配置JAVA_HOME變數,右擊我的電腦屬性高級系統設置環境變數,新建一個變數名為JAVA_HOME,變數值為jdk安裝目錄(例如:D:\Java\jdk1.7.0)的環境變數,建好後在系統環境變數中會多出一個“JAVA_HOME”變數。

  其次配置path變數,系統環境變數中找到path變數(在Windows下,環境變數不區分大小寫),點擊【編輯】按鈕會彈出編輯系統環境的對話框,path變數值中設置有很多目錄,可以看到目錄之間是用“;”(分號)隔開的,所以我們將%JAVA_HOME%\bin添到其中是記得用分號隔開,然後path環境變數配置完成。

  最後我們配置classpath變數,設置Classpath的目的,在於告訴Java執行環境,在哪些目錄下可以找到您所要執行的Java程式(.class文件),關於這個ClassPath變數,其實可以不用配置了,在網上經常看到Classpath=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\toos.jar,但學習java這麼久發現,不配置ClassPath也不影響java項目的開發和運行的。

  附:JAVA_HOME變數、Path變數、ClassPath變數、系統變數和用戶變數區別的說明

  JAVA_HOME變數

  一、為了方便引用,比如,JDK安裝在D:\Java\jdk1.7.0目錄里,則設置JAVA_HOME為該目錄路徑, 那麼以後要使用這個路徑的時候, 只需輸入%JAVA_HOME%即可, 避免每次引用都輸入很長的路徑串; 
  二、歸一原則, 當JDK路徑被迫改變的時候, 僅需更改JAVA_HOME的變數值即可。
  三、第三方軟體會引用約定好的JAVA_HOME變數, 典型的就是tomcat伺服器,如果不配置JAVA_HOME變數,那麼tomcat伺服器根本運行不起來

  Path變數

  操作系統用path的路徑來找可執行程式(.exe程式),在windows下當我們敲任何一個命令時,實際上就是在執行一個可執行文件,如輸入notepad命令就可以打開一個記事本,實際上是執行了c:\Windows下的notepad.exe這個可執行文件,和用滑鼠雙擊notepad.exe後能夠打開一個記事本的效果是一樣的。

  當在命令視窗敲一個命令時,系統就會去自動尋找這個命令對應的可執行文件(.exe),如果這個文件不存在,就當然無法執行這個命令了。這個可執行文件的根目錄必須設置在path環境變數中。

  直接輸入“echo %path%”命令就可以顯示設置的path環境變數的所有根目錄了,只要是根目錄裡面存在相應的.exe文件,敲入命令時就能執行這個相應的.exe文件。因為notepad.exe所在的Windows目錄已經添加到了Path環境變數中了,這就解釋了為什麼輸入命令notepad就可以打開一個記事本,所以前面配置java開發環境時,將%JAVA_HOME%\bin添加到Path變數中的目的就是希望可以在命令行視窗下使用javac和java這兩個命令來執行javac.exe和java.exe這兩個可執行程式。

  Classpath變數

  使用javac命令編譯.java文件時,如果需要其他的類,也是通過classpath去找的,使用java命令執行.class文件時,執行的.class文件是通過classpath去找的。classpath表示的是要查找的類所在的路徑。

  系統變數和用戶變數區別

  環境變數中有兩種變數,一種是用戶變數,另一種是系統變數,那麼這兩種變數有什麼區別呢?用戶變數,顧名思義,是針對某一個特定的用戶的,只對特定的用戶有效,而系統變數,則對任何用戶都有效。

  有時候我們會在用戶變數中配置Path變數,這時沒有添加用戶變數Path前,Path變數的值就是系統變數Path裡面設置的值;添加用戶變數Path後,Path變數的值=系統變數Path裡面設置的值+用戶變數Path中設置的值。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 轉載:http://blog.csdn.net/afgasdg/article/details/12757433
  • 1.主要學習這程式的編寫思路 a.讀取解釋網站 b.找到相關頁 c.找到圖片鏈接的元素 d.保存圖片到文件夾 ..... 將每一個步驟都分解出來,然後用函數去實現,代碼易讀性高. ##代碼儘快運行時會報錯,還須修改 import urllib.request import os def url_op
  • 線程問題我會分成三篇文章來給大家做個詳細的講解 一、線程的概念 1.線程是進程的組成部分,一個進程可以擁有多個線程,一個線程必須有一個父線程; 2.線程擁有自己的堆棧、自己的程式計數器和自己的局部變數,但不再擁有系統資源,它與父線程中的其他線程共用該進程所擁有的全部資源 3.線程是獨立運行的,它並不
  • 會話技術: 會話:瀏覽器訪問伺服器端,發送多次請求,接受多次響應。直到有一方斷開連接。會話結束。 解決問題:可以使用會話技術,在一次會話的多次請求之間共用數據。 分類: 客戶端會話技術 Cookie 伺服器端會話技術 Session 客戶端會話技術:Cookie 小餅干的意思 伺服器端不需要管理,方
  • 一個成熟的大型網站(如淘寶、京東等)的系統架構並不是開始設計就具備完整的高性能、高可用、安全等特性,它總是隨著用戶量的增加,業務功能的擴展逐漸演變完善的,在這個過程中,開發模式、技術架構、設計思想也發生了很大的變化,就連技術人員也從幾個人發展到一個部門甚至一條產品線。 (歡迎大家訪問我的個人網站:工
  • 話題從重用開始說起: 最基本的重用,重用一個方法,被重用的邏輯被抽取封裝成為方法,之後我們把方法當成一種工具來使用(處理數據,輸入輸出,或者改變狀態)。 來到了面向對象的時代,如果這個方法出現父類上面就是繼承,如果這個方法出現在其他對象上就是代理,如果子類想要重用父類的介面又不想重用實現那麼就是多態
  • 頭文件: <cfloat> (float.h) 浮點類型的特性 這個頭文件為特殊系統和編譯器的實現描述了浮點類型的特征. 一個浮點數包含四個元素: 一個標誌(a sign):正或負; 一個基數(a base):這表示一串不同的數字能夠被一個個單一的數字所表示(2 就是二進位(binary),10就是
  • 程式產生一個1-100的隨機數,用戶嘗試儘可能少的次數猜出這個數。 #include<stdio.h> #include<stdlib.h> #include<time.h> #define MAX_NUMBER 100 //external variable int secret_number;
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...