Windows/macOS/Linux
mitä ympäristömuuttujat ovat?
ympäristömuuttujat ovat globaaleja järjestelmämuuttujia, joihin pääsevät käsiksi kaikki käyttöjärjestelmän (OS) alla toimivat prosessit / käyttäjät, kuten Windows, macOS ja Linux. Ympäristömuuttujista on hyötyä järjestelmän laajuisten arvojen tallentamisessa esimerkeissä,
-
PATH
: useimmin käytetty ympäristömuuttuja, joka tallentaa luettelon suoritettavien ohjelmien hakemistoista. -
OS
: käyttöjärjestelmä. -
COMPUTENAME
USERNAME
: tallentaa tietokoneen ja nykyisen käyttäjänimen. -
SystemRoot
: järjestelmän juurihakemisto. - (Windows)
HOMEDRIVE
HOMEPATH
: nykyisen käyttäjän kotihakemisto.
(Windows) ympäristömuuttujat
Windowsin ympäristömuuttujat eivät ole kirjainherkkiä (koska legacy DOS ei ole kirjainherkkää). Ne nimetään tyypillisesti isoilla kirjaimilla, ja sanat on liitetty alaviistoon (_
), esimerkiksi JAVA_HOME
.
Näytä ympäristömuuttujat ja niiden arvot
luetteloidaksesi kaikki ympäristömuuttujat ja niiden arvot, aloita CMD ja anna komento ”set
”, seuraavasti,
// Display all the variables (in NAME=VALUE pairs)setCOMPUTERNAME=xxxxxxxOS=xxxxxxxPATH=xxxxxxx.......
yritä antaa ”set
” komento järjestelmään, ja tutkia ympäristömuuttujat lueteltu. Kiinnitä erityistä huomiota muuttujaan PATH
.
tietyn muuttujan näyttämiseksi käytä komentoa ”set varname
” tai ”echo %varname%
”:
// Display a particular variableset COMPUTERNAMECOMPUTERNAME=xxxxxx// or, use "echo" command with variable name enclosed within a pair of '%'echo %COMPUTERNAME%COMPUTERNAME=xxxxxx
Set/Unset/Change an Environment Variable for the ”Current” CMD Session
to set (or change) ympäristömuuttuja, käytä komentoa ”set varname=value
'='
– merkin edessä ja jälkeen ei saa olla välilyöntejä. Poista ympäristömuuttuja käyttämällä ”set varname=
”, eli aseta se tyhjään merkkijonoon.
set varnameset varname=valueset varname=set |
Display the value of the variableSet or change the value of the variable (Note: no space before and after '=')Delete the variable by setting to empty string (Note: nothing after '=')Display ALL the environment variables |
For examples,
// Set an environment variable called MY_VARset MY_VAR=hello // Displayset MY_VARMY_VAR=hello // Unset an environment variableset MY_VAR= // Displayset MY_VAREnvironment variable MY_VAR not defined
An environment variable set via the ”set
” command under CMD is a local, available to the current CMD session only. Try setting a variable, re-start CMD and look for the variable.
käyttämällä ympäristömuuttujaa
viitataksesi muuttujaan Windowsissa, käytä %varname%
(etuliite ja loppuliite '%'
). Esimerkiksi echo
– komennolla voidaan tulostaa muuttujan arvo muodossa ”echo %varname%
”.
// Display the PATH environment variableecho %PATH%PATH=xxxxxxx // Append a directory in front of the existing PATHset PATH=c:\myBin;%PATH%PATH=c:\myBin;
kuinka ympäristömuuttuja lisätään tai muutetaan”pysyvästi”
ympäristömuuttujan lisäämiseksi/muuttamiseksi pysyvästi Windowsiin (siten, että se on kaikkien Windowsin prosessien/käyttäjien saatavilla ja pysyi bootsien päällä):
- Käynnistä ”Ohjauspaneeli”
- ”Järjestelmän lisäasetukset”
- Vaihda ”Lisäasetukset” – välilehteen
- ”ympäristömuuttujat”
- valitse ”järjestelmämuuttujat” (kaikille käyttäjille)
- lisätäksesi uuden ympäristömuuttujan:
- Valitse ”Uusi”
- Anna muuttuja ”nimi” ja ”arvo”. Sen sijaan, että kirjoitat ” arvo ”ja tekee kirjoitusvirhe, ehdotan, että käytät” Selaa hakemistoa…”tai” selaa tiedostoa…”painiketta hakea haluamasi hakemiston tai tiedoston.
- muuttaa olemassa olevaa ympäristömuuttujaa:
- valitse ”Edit”
- Anna uusi ”arvo”. Sen sijaan, että kirjoitat ” arvo ”ja tekee kirjoitusvirhe, ehdotan, että käytät” Selaa hakemistoa…”tai” selaa tiedostoa…”painiketta hakea haluamasi hakemiston tai tiedoston.
järjestelmä”
sinun täytyy aloittaa CMD uudelleen, jotta uusi asetus tulee voimaan!
uuden asetuksen tarkistamiseksi käynnistetään CMD:
set VAR_NAMEVAR_NAME=VAR_VALUE
PATH-ympäristömuuttuja Windowsissa
kun käynnistät suoritettavan ohjelman (tiedostopäätteellä ”.exe
.bat
” tai ”.com
”) cmd-komentotulkilta Windows etsii suoritettavan ohjelman nykyisestä työhakemistosta, jonka jälkeen tulevat kaikki PATH
ympäristömuuttuja-luettelossa luetellut hakemistot. Jos ohjelmaa ei löydy näistä hakemistoista, saat seuraavan virheen:
// (Windows 2000/XP/Vista/7/8/10) "cmd.exe"abc'abc' is not recognized as an internal or external command,operable program or batch file. // (Windows 95/98) "command.com"abcBad command or file name
nykyisen PATH
, issue command:
PATHPATH=path1;path1;path3;...
kuinka lisätä Hakemisto Windowsin polkuun
lisätä kansio olemassa olevaan PATH
Windowsissa:
- Käynnistä ”Ohjauspaneeli”
- ”Järjestelmän lisäasetukset”
- Vaihda ”Lisäasetukset” – välilehteen
- ”ympäristömuuttujat”
- kohdassa ”järjestelmämuuttujat” (kaikille käyttäjille), Valitse ”polku”
- ”muokata”
- (uudemmille Windows 10: lle) ilmestyy taulukko, joka näyttää nykyiseen POLKUASETUKSEEN sisältyvät hakemistot ⇒ ”Uusi” ⇒ ”selaa…”jos haluat valita haluamasi hakemiston, joka lisätään polkuun (älä kirjoita, koska teet kirjoitusvirheen!) ⇒ ”Siirrä ylös ”toistuvasti siirtääksesi sen alkuun ⇒” OK ”(älä” peruuta”) ⇒ ” OK ” ⇒ ”OK”.
- (vanhemmille Windowsille) jos et nähnyt ponnahdustaulua, on aika vaihtaa tietokone.
järjestelmä”
sinun on käynnistettävä CMD uudelleen, jotta Uusi POLKUASETUS tulee voimaan!
uuden asetuksen tarkistamiseksi Käynnistä CMD:
PATHPATH=path1;path2;path3;...
Huom:
- Windows hakee nykyisen kansion (
.
) ennen kuin hakeePATH
merkinnät. (Unixes / macOS ei etsi nykyistä hakemistoa, ellet liitä sitä polkuun nimenomaisesti.) - Windows käyttää puolipistettä (
;
) polkuerottimena; kun taas Unixes/macOS käyttää kaksoispistettä (:
). - Jos hakemistosi nimi sisältää erikoismerkkejä, kuten välilyöntiä (ei suositella), liitä se kaksoislainausmerkkeihin.
(macOS/Linux) ympäristömuuttujat
ympäristömuuttujat macOS / Unixeissa ovat kirjainkokoherkkiä. Globaalit ympäristömuuttujat (kaikkien prosessien käytettävissä) on nimetty isoilla kirjaimilla ja sanat on liitetty alaviivaan (_
), esim. JAVA_HOME
. Paikalliset muuttujat (saatavilla vain nykyiselle prosessille) ovat pieninä kirjaimina.
ympäristömuuttujien käyttäminen bash-komentotulkissa
useimmat Unixit (Ubuntu / macOS) käyttävät niin sanottua Bash-komentotulkkia. bash
shell:
- kaikkien ympäristömuuttujien luetteloimiseksi käytetään komentoa”
env
”(tai”printenv
”). Voit myös käyttää ”set
” listaa kaikki muuttujat, mukaan lukien kaikki paikalliset muuttujat. - viitataksesi muuttujaan, käytä
$varname
, etuliitteellä'$'
(Windows käyttää%varname%
). - tietyn muuttujan arvon tulostamiseen käytetään komentoa ”
echo $varname
”. - asettaaksesi ympäristömuuttujan, käytä komentoa ”
export varname=value
”, joka asettaa muuttujan ja vie sen globaaliin ympäristöön (muiden prosessien käyttöön). Suljettu arvo kaksinkertaisilla lainausmerkeillä, jos se sisältää välilyöntejä. - asettaaksesi paikallisen muuttujan, käytä komentoa ”
varname
=value
” (tai ”set
varname
=value
”). Paikallinen muuttuja on käytettävissä vain tässä prosessissa. - irrottaaksesi paikallisen muuttujan, käytä komentoa ”
varname
=
”, eli aseta tyhjäksi merkkijonoksi (tai ”unset
varname
”).
Kuinka asettaa ympäristömuuttuja pysyvästi Bash-Komentotulkkiin
voit asettaa ympäristömuuttujan pysyvästi asettamalla export
komento Bash-komentotulkin käynnistyskomentosarjalle ”~/.bashrc
” (tai "~/.bash_profile
”, tai ”~/.profile
”) kotihakemistoon; tai ”/etc/profile
” järjestelmälaajuisille operaatioille. Huomaa, että pisteellä (.
) alkavat tiedostot ovat oletuksena piilossa. Piilotiedostojen näyttämiseksi käytetään komentoa ”ls -a
”tai”ls -al
”.
esimerkiksi PATH
ympäristömuuttuja lisätään seuraava rivi "~/.bashrc
” (tai "~/.bash_profile
”, tai ”~/.profile
”), jossa ~
merkitsee nykyisen käyttäjän kotihakemistoa tai ”/etc/profile
” kaikille käyttäjille.
// Append a directory in front of the existing PATHexport PATH=/usr/local/mysql/bin:$PATH
(Javalle) voit asettaa CLASSPATH
ympäristömuuttujat lisäämällä seuraavan rivin. Esimerkiksi
export CLASSPATH=.:/usr/local/tomcat/lib/servlet-api.jar
huomaa, että Bash-komentotulkki käyttää polunerottimena kaksoispistettä (:
), kun taas windows käyttää puolipistettä (;
).
päivittääksesi Bash-komentotulkin, anna”source
” – komento (tai käynnistä bash-komentotulkki uudelleen):
// Refresh the bash shellsource ~/.bashrc// orsource ~/.bash_profilesource ~/.profilesource /etc/profile
(huomioita) vanhemmille csh: lle (C-shell) ja ksh: lle (Korn-shell)
- käyttävät ”
printenv
” (tai ”env
”) kaikkien ympäristömuuttujien luettelointiin. - käytä ympäristömuuttujan asettamiseen ja purkamiseen ”
setenv varname value
” ja ”unsetenv varname
”. - käytä ”
set varname=value
” ja ”unset varname
” asettaaksesi ja purkaaksesi paikallisen muuttujan nykyiselle prosessille.
PATH-ympäristömuuttuja
useimmat Unixit ja macOS käyttävät niin sanottua Bash-komentotulkkia ”terminaalissa”. Kun käynnistät suoritettavan ohjelman (suoritettavan tiedoston luvalla) Bash-komentotulkilla, järjestelmä etsii ohjelman kaikista luetteloiduista hakemistoista PATH
. Jos ohjelmaa ei löydy, saat seuraavan virheen:
abcbash: abc: command not found
huomaa, että nykyistä hakemistoa (.
) ei haeta, ellei se sisälly PATH
. Jotta ohjelma voidaan ajaa nykyisessä hakemistossa, sinun on sisällytettävä nykyinen polku (./
), esimerkiksi
./myProgram
luetellaksesi nykyisen PATH
, issue-komento:
echo $PATHpath1:path2:path3:...
kuinka lisätä Hakemisto polulle macOS/Linuxissa
lisätäksesi kansion olemassa olevaan PATH
macOS/Unixeissa, lisää seuraava rivi jonkin käynnistyskoskriptin loppuun, kuten "~/.bashrc
~/.login
"~/.bash_profile
~/.profile
” (jossa ~
merkitsee nykyisen käyttäjän kotihakemistoa) tai ”/etc/profile
” kaikille käyttäjille.
// Append a directory in front of the existing PATHexport PATH=/path/to/dir:$PATH
päivittää bash-komentotulkin, antaa ”source
” komento (tai käynnistää Bash-komentotulkin uudelleen):
// Refresh the bash shellsource ~/.bashrc// orsource ~/.bash_profilesource ~/.profilesource /etc/profile
uuden asetuksen tarkistamiseksi, käynnistää CMD:
echo $PATHpath1:path2:path3:...
notes:
- unixes/macOS ei hae nykyisestä hakemistosta (
.
), ellei sitä erikseen sisällytetäPATH
. Toisin sanoen ohjelman ajamiseksi nykyisessä hakemistossa on annettava Hakemisto (./
), esimerkiksi./myProgram
voit sisällyttää nykyisen hakemiston
PATH
lisäämällä tämän rivin startup script:// Append the current directory (.) in front of the existing PATHexport PATH=.:$PATH
(Windows hakee nykyisen kansion (
.
) automaattisesti ennen polun etsimistä.) - Unixes/macOS käyttää polunerottimena kaksoispistettä (
:
), kun taas Windows käyttää puolipistettä (;
).
Java-sovellukset ja ympäristömuuttujat PATH, CLASSPATH, JAVA_HOME
monet ongelmat Java-sovellusten asennuksessa ja käytössä johtuvat ympäristömuuttujien virheellisestä asettamisesta (globaalit järjestelmämuuttujat kaikkien käyttöjärjestelmän alla toimivien prosessien/käyttäjien saatavilla), erityisesti PATH
CLASSPATH
ja JAVA_HOME
.
polku
kun ohjelma käynnistetään komentoriviltä, käyttöjärjestelmä käyttää PATH
ympäristömuuttujaa etsiäkseen ohjelmaa paikallisesta tiedostojärjestelmästä. Toisin sanoen PATH
ylläpitää listaa suoritettavien ohjelmien hakemistoista.
polku (Windowsille)
kun käynnistät suoritettavan ohjelman (tiedostopäätteellä ”.exe
.bat
” tai ”.com
”) CMD-komentotulkilta, Windows etsii suoritettavan ohjelman nykyisessä työvaiheessa hakemisto, jota seuraavat kaikki PATH
ympäristömuuttuja-luettelossa luetellut hakemistot. Jos ohjelmaa ei löydy näistä hakemistoista, saat seuraavan virheen:
// (Windows 2000/XP/Vista/7/8/10) "cmd.exe"abc'abc' is not recognized as an internal or external command,operable program or batch file. // (Windows 95/98) "command.com"abcBad command or file name
esimerkiksi, jos yrität käyttää Java-Kääntäjää ”javac.exe
” Java-lähdetiedoston kokoamiseen, mutta ”javac.exe
” ei löydy nykyisestä hakemistosta ja kaikki hakemistot PATH
, saat seuraavan virheen:
javac Hello.java'javac' is not recognized as an internal or external command,operable program or batch file.
PATH
ylläpitää luetteloa hakemistoista. Hakemistot erotetaan toisistaan puolipisteellä (;
) Windowsissa.
Java-sovellusten osalta PATH
on sisällettävä seuraavat hakemistot:
- JDK: n ”
bin
” (binary) directory (esim. ”c:\Program Files\java\jdk1.x.x\bin
”), joka sisältää JDK-ohjelmia kuten Java-kääntäjä ”javac.exe
” ja Java Runtime ”java.exe
”. - ”
c:\windows\system32
” ja ”c:\windows
”, jotka sisältävät konsoliohjelmia ja komentoja.
JDK: n ”bin
” – Hakemisto tulisi listata ennen ”c:\windows\system32
” ja ”c:\windows
PATH
. Tämä johtuu siitä, että jotkin vanhemmat Windows-järjestelmät tarjoavat näistä hakemistoista oman Java-ajonaikansa (joka on usein vanhentunut) (kokeile etsiä ”java.exe
” tietokoneellasi, saatat löytää muutamia merkintöjä).
Jos haluat lisätä kansion (esimerkiksi JDK: n ”bin
”) olemassa olevaan polkuun, valitse ”miten kansio lisätään polkuun”.
polku (macOS/Linuxille)
useimmat Unixit ja macOS käyttävät niin sanottua Bash-komentotulkkia ”terminaalissa”. Kun käynnistät suoritettavan ohjelman (suoritettavan tiedoston luvalla) Bash-komentotulkilla, järjestelmä etsii ohjelman kaikista luetteloiduista hakemistoista PATH
. Jos ohjelmaa ei löydy, saat seuraavan virheen:
abcbash: abc: command not found
esimerkiksi, jos yrität käyttää Java-Kääntäjää ”javac
” koota Java-lähdekooditiedoston, mutta ”javac
” ei löydy hakemistojen luettelosta PATH
, saat seuraavan virheen:
javac Hello.javabash: javac: command not found
tukeaksesi Java-sovelluksia, sinun täytyy sisällyttää polkuun JDK: n ”bin
” (binäärihakemisto). Katso ”kuinka lisätä Hakemisto polkuun”.
CLASSPATH
Java Archive (JAR)-tiedosto
jakelun helpottamiseksi Java-luokat usein arkistoidaan (zippataan) yhteen niin sanotuksi JAR-tiedostoksi. Jotta voit käyttää kolmannen osapuolen Java-pakettia, sinun on sijoitettava jaettu JAR-tiedosto paikkaan, joka on saatavilla Java-kääntäjälle ja Java-Ajonajalle.
miten luokat löytyvät?
Java Compiler (”javac
”), Java Runtime (”java
”) and other Java tools searches for classes used in your program in this order:
- Java platform (bootstrap) classes: include system classes in core packages (
java.*
) and extension packages (javax.*
) in ”rt.jar
” (runtime class), ”i18n.jar
” (internationalization class),charsets.jar
jre/classes
, and others. - Java Extension Directories: Voit kopioida ulkoiset JAR-tiedostot Java-Laajennushakemistoon (tämä on poistettu ja ei sovelleta JDK 10: stä).
- Windowsille Java-Laajennushakemisto sijaitsee osoitteessa ”
<JAVA_HOME>\jre\lib\ext
” (esim. ”c:\Program Files\Java\jdk1.7.0_{xx}\jre\lib\ext
”). - macOS: lle JDK-laajennushakemistot ovat ”
/Library/Java/Extensions
” ja ”/System/Library/Java/Extensions
”. - Ubuntun JDK-laajennushakemistot ovat ”
<JAVA_HOME>/jre/lib/ext
” (esimerkiksi ”/usr/user/java/jdk1.7.0_{xx}/jre/lib/ext
”) ja ”/usr/java/packages/lib/ext
”.
Javan Laajennushakemistojen sijainti pidetään Javan järjestelmän ominaisuudessa ”
java.ext.dirs
”. Sen sisällön voi tulostaaSystem.out.println(System.getProperty("java.ext.dirs"))
. - Windowsille Java-Laajennushakemisto sijaitsee osoitteessa ”
- Käyttäjäluokat hakupolku (lyhyesti luokkapolku): määritetty seuraavassa järjestyksessä:
- oletusarvoisesti nykyiseen työhakemistoon (
.
). - merkinnät
CLASSPATH
ympäristömuuttuja, joka ohittaa oletusarvon. - merkinnät
-cp
(tai-classpath
) komentorivivalinta, joka ohittaaCLASSPATH
ympäristömuuttujan. - ajonaikainen komentorivivalinta
-jar
, joka ohittaa kaikki edellä mainitut.
Käyttäjäluokan polut pidetään Java-järjestelmän ominaisuudessa ”
java.class.path
”.
on suositeltavaa käyttää-cp
(tai-classpath
) komentorivivalintaa (räätälöity jokaiselle sovelluksellesi) sen sijaan, että asetettaisiin pysyväCLASSPATH
ympäristö kaikille Java-sovelluksille. IDE (kuten Eclipse/NetBeans) hallinnoi-cp
-classpath
) jokaista sovellusta, eikä luotaCLASSPATH
ympäristöön. - oletusarvoisesti nykyiseen työhakemistoon (
ei löydä luokkia
Jos Java-Runtime (”java
”) ei löydä ohjelmassasi käytettyjä luokkia kaikista edellä mainituista paikoista, se antaa virheen ”ei löytynyt tai ladattu pääluokka xxxx” (JDK 1.7) tai ”java.lang.NoClassDefFoundError” (ennen JDK 1.7).
vastaavasti Java-kääntäjä (”javac
”) tekee käännösvirheitä, kuten ”symbolia ei löydy”, ”pakettia ei ole olemassa”.
muistiinpanot: Ulkoiset natiivikirjastot (”.lib
.dll
.a
.so
”) löytyvät polulta JRE: n omaisuudesta ”java.library.path
”, joka normaalisti mutta ei välttämättä sisällä kaikkia PATH
ympäristömuuttujan hakemistoja. Muuten tulee ajonaikavirhe ”java.lang.UnsatisfiedLinkError: no xxx in java.library.path
”.
CLASSPATH-ympäristömuuttuja
CLASSPATH
ympäristömuuttuja voi sisältää hakemistoja (jotka sisältävät useita luokkatiedostoja) ja JAR-tiedostoja (yhden tiedoston arkisto luokkatiedostoista). Jos CLASSPATH
ei ole asetettu, se asetetaan oletusarvoisesti nykyiseen hakemistoon. Jos asetat CLASSPATH
, on tärkeää sisällyttää mukaan nykyinen työhakemisto (.
). Muussa tapauksessa nykyistä hakemistoa ei haeta.
yleinen ongelma hello-maailma-ohjelman pyörittämisessä on: CLASSPATH
on asetettu, mutta ei sisällä nykyistä työhakemistoa. Nykyistä hakemistoa ei siis etsitä, mikä johtaa ”virhe: ei löytynyt tai ladattu pääluokka Hello”. Voit poistaa CLASSPATH
ja jättää luokkapolun oletettuna nykyiseen hakemistoon.
aloittelijalle ei tarvita nimenomaista CLASSPATH
asetusta. Nykyisen hakemiston oletusarvo CLASSPATH
on riittävä. Poista kaikki CLASSPATH
asetus, jos sellainen on. Kuitenkin, jos sinun on asetettava CLASSPATH
, varmista, että olet sisällyttänyt nykyisen hakemiston '.'
.
PATH
ympäristömuuttuja (suoritettavien ohjelmien etsimistä varten) koskee kaikkia sovelluksia, kun taas CLASSPATH
on käytössä vain Java.
Lue JDK: n dokumentit ”Setting the CLASSPATH
” ja ”How Classes are Found” (Hyperlinkit löytyvät JDK: n dokumentaation indeksisivulta eli googletuksesta).
CLASSPATH-ympäristömuuttuja (Windowsille)
CLASSPATH
hyväksyy hakemistot ja jar-tiedostot. Polkujen merkinnät erotetaan puolipisteellä (;
).
esimerkki: näytetään ja muutetaan CLASSPATH
nykyiselle CMD-istunnolle.
// Display current setting of CLASSPATHset CLASSPATH // Set CLASSPATH to the current directory and a JAR fileset CLASSPATH=.;d:\tomcat\lib\servlet-api.jar
voit asettaa CLASSPATH
pysyvästi. Katso ”kuinka ympäristömuuttuja asetetaan”.
CLASSPATH (macOS/Ubuntu)
- asettaaksesi
CLASSPATH
nykyiselle istunnolle, anna tämä komento:export CLASSPATH=.:/usr/local/tomcat/bin/servlet-api.jar
käytä kaksoispistettä”
:
”polkuerottimena (puolipisteen sijaan”;
” Windowsissa). - asettaaksesi
CLASSPATH
pysyvästi, aseta yllä oleva vientikomento bash-komentotulkin alustuskomennolle (.bashrc
tai.bash_profile
kotihakemiston tai/etc/profile
kaikille käyttäjille). Katso ”kuinka asettaa ympäristömuuttuja”.
JAVA_HOME ja JRE_HOME
monet Java-sovellukset (kuten Tomcat) vaativat ympäristömuuttujan JAVA_HOME
asettamista JDK-asennettuun hakemistoon.
miten JAVA_HOME asetetaan Windowsissa
ensin, tarkista onko JAVA_HOME
on jo asetettu start a CMD ja issue:
set JAVA_HOME
Jos JAVA_HOME
ei ole asetettu, saat ”ympäristömuuttujan java_kotia ei ole määritelty”. Muussa tapauksessa nykyinen asetus näytetään.
set / change JAVA_HOME
Windowsissa:
- käynnistää ”Ohjauspaneelin”
- ”Järjestelmän lisäasetukset”
- Vaihda”Lisäasetukset” – välilehteen
- ”ympäristömuuttujat”
- valitse”järjestelmämuuttujat”(kaikille käyttäjille)
- lisätäksesi uuden ympäristömuuttujan ”
JAVA_HOME
”:- Valitse”Uusi”
- ”muuttujan nimessä”merkitään ”JAVA_HOME”.
- valitse ”muuttujan arvo” – kohdassa ”Selaa hakemistoa…”ja siirry JDK: n asennettuun hakemistoon (esim. ”
C:\Program Files\Java\jdk-15.0.xx
”). - OK ⇒ OK ⇒ OK.
- muuttaaksesi olemassa olevaa ”
JAVA_HOME
” asetusta:- valitse ”
JAVA_HOME
” ⇒ ”Edit” - ”muuttujan arvossa” klikkaa ”Selaa hakemistoa…”ja siirry JDK: n asennettuun hakemistoon (esim. ”
C:\Program Files\Java\jdk-15.0.xx
”). - OK ⇒ OK ⇒ OK.
- valitse ”
sinun täytyy aloittaa CMD uudelleen, jotta uusi asetus tulee voimaan!
tarkistaaksesi uuden asetuksen, Käynnistä CMD uudelleen:
set JAVA_HOMEJAVA_NAME=C:\Program Files\Java\jdk-13.0.1
miten JAVA_HOME asetetaan Linux/macOS (Bash Shell)
ensin tarkistetaan, onko JAVA_HOME
jo asetettu start a terminal and issue:
echo $JAVA_HOME
JAVA_HOME
asetetaan asennettuun JDK-hakemistoon. Sinun täytyy löytää JDK asennetun hakemiston.
etsi macOS-ja Ubuntu JDK-asennushakemisto.
lisätään seuraava rivi "~/.bashrc
” (tai ”~/.login
”). Huomaa, että pisteellä alkava tiedostonimi (.
) on oletuksena piilotettu.
macOS/Ubuntun piilottamisen poistaminen.
export JAVA_HOME=/path/to/JDK-installed-directory
sinun täytyy päivittää bash-komentotulkki, jotta uudet asetukset tulevat voimaan. Issue a”source
”komento seuraavasti:
// Refresh the Bash Shellsource ~/.bashrc // or "source ~/.login"// Verify the new settingecho $JAVA_HOME
Windows vs. Unixes/macOS
Java on alustariippumaton. Java-luokat toimivat Windows sekä unixes-binääriyhteensopiva.
- Unixeilla on monia kuoria, kuten uudempi
bash
ja vanhempicsh
ksh
. Ikkunoissa on kaksi kuorta: uudempicmd.exe
ja vanhempicommand.com
. Jokaisella komentotulkilla on omat komentonsa, apuohjelmansa ja oma komentosarjakielensä. - Unixin muuttujan nimi merkitään
$varname
, esimerkiksi$CLASSPATH
. Windows käyttää%varname%
, e,g.,%CLASSPATH%
. - Unix uses command ”
printenv
” (print environment) or ”env
” to list all the environment variables. Windows uses command ”set
”. - Unix’s
PATH
is set permanently in the login or shell initialization script (e.g., ”~/.login
~/.profile
~/.bashrc
~/.bash_profile
”, or ”/etc/profile
”). Windows’PATH
is set permanently via Control Panel ⇒ System ⇒ …. - nykyinen hakemisto ei sisälly Unixin
PATH
implisiittisesti. Jotta ohjelma voidaan ajaa nykyisessä hakemistossa, täytyy antaa ”./programName
” missä ”.
” tarkoittaa nykyistä hakemistoa. Nykyinen hakemisto (.
) suositellaan sisällytettäväksiPATH
eksplisiittisesti. Toisaalta nykyinen hakemisto sisältyy WindowsinPATH
implisiittisesti. - Windowsin polku sisältää aseman kirjaimen ja hakemistoja. Jokaisella asemalla on juurihakemisto. Se käyttää hakemistoerottimena selkäviivaa
'\'
(esim.”c:\jdk1.6\bin
”). Linuxin poluilla ei ole asemakirjainta. On yksi juuri. Unix käyttää hakemiston erottimena forward slash'/'
(esim. ”/usr/bin/jdk1.6
”). - Windows käyttää puolipistettä
';'
polkuerottimena (esimerkiksiPATH
ympäristömuuttuja), kun taas Unix käyttää kaksoispistettä':'
. - Windows/DOS käyttää ”
0D0AH
” (carriage-return plus line-feed) line-break (tai end-of-Line (EOL) eli newline). Unixes / macOS käyttää vain ”0AH
” (viivasyöttö).
Leave a Reply