Jag har alltid svårt att ställa in miljövariablerna i OS X som JAVA_HOME
, M2_HOME
eller PATH
. Hur ställer jag in dessa på OS X Mavericks?
Jag gjorde en del undersökningar men de svar jag hittat hjälpte mig inte riktigt ännu:
-
export JAVA_HOME=/...
(Men det verkar som att ändringarna är tillfälliga, bara för en terminalsession.) -
setenv JAVA_HOME=/...
(Men kommandot hittades inte.) - Öppna
.profile
och skriv variablerna inuti för att göra ändringarna permanenta (.profile
finns inte). - Öppna
.bash_profile
och skriv variablerna inuti för att göra ändringarna permanent- (.bash_profile
finns inte). -
vi ~/.bash_profile
(Ganska en utmaning för någon som inte vetvi
.) - Skapa din egen
enrivonment.plist
-fil.
Kan någon snälla gå igenom stegen för att få det att fungera på OS X Mavericks, förutsatt att nej Unix-kunskap?
Kommentarer
- Unix (och alla andra operativsystem) kan vara svårt för ne w användare så att jag kan förstå din frustration. Ändå är frågan som skriven ganska bred och kommer ’ inte att ge de svar du letar efter. Kan du snälla skriva om den för att fokusera på det problem du faktiskt har (som ” Hur ställer jag in JAVA_HOME och PATH på Mavericks ”) vilket kommer att säkerställa att du får bra svar du kan bygga på?
- Som jag ser har Stuffe redan redigerat min fråga. Thanx. Min fråga är som titeln säger, hur man ställer in JAVA_HOME och PATH på Mavericks.
- @patrix: Nästa gång förklarar jag mitt problem eller vad jag vill ställa, och du kommer att skriva MIN FRÅGA MED DINA ORD. OK? Det verkar som om du moderatorer är mycket nöjda med att göra detta.
Svar
Jag har en .profil i min hemkatalog; den innehåller många export …
uttalanden för miljövariabler.
Du kan skapa en sådan fil genom att öppna en terminal och utfärda kommandot touch .profile
Stäng terminalen.
Då bör du öppna den filen i en redigerare för ren text (till exempel TextWrangler). Du kan också använda nano .profile
i ett terminalfönster (den nuvarande katalogen ska vara ditt hem), vilket är mycket enklare än vi
. Infoga rader som export JAVA_HOME=…
. Spara, avsluta nano
om du använde det och avsluta en löpande terminal.
Öppna Terminal och ge kommandot env
för att se alla miljövariabler. Kontrollera att de du har definierat har det värde du tilldelat dem. Du borde vara bra att gå nu. Men glöm inte att miljövariabler som definierats i .profile
inte skickas till GUI-applikationer.
Kommentarer
- Tack så mycket. Detta var det jag verkligen letade efter. Jag har nu ställt in alla mina variabler. Vad menar du med GUI-applikationer? Jag behövde bara några variabler för java och maven för att arbeta med förmörkelse, fjäderverktyg etc. Eclipse är ett program med GUI (grafiskt användargränssnitt). Menar du detta med GUI?
- Okej. Jag har läst några och jag tror att du har menat riktigt GUI med GUI .. Finns det ett sätt att göra dessa variabler tillgängliga överallt? Vad är det vanligaste sättet eller var är den vanligaste platsen att definiera dem då?
- 1. ja det är det jag menade med en GUI-app. 2. ställa in miljövariabler för GUI-app ’ s i OS X 10.8 verkar vara svårt. Vissa appar låter dig definiera miljövariabler som ska skickas till andra applikationer, till exempel i deras preferenser. u kan också använda
open -a Appname
-metoden i en terminalsession. - Jag vet inte ’ vet inte varför men för mig (OS X Yosemite 10.10.1) hjälpte
.profile
inte ’ t. Jag var tvungen att lägga inexport
uttalanden i.bash_profile
för att få det att fungera. Förhoppningsvis hjälper det någon annan om han stöter på samma problem …
Svar
I Yosemite, du ska placera export VARIABLE="something"
inuti .bash_profile
.
Jag har försökt skriva export VARIABLE="something"
inuti .profile
utan framgång.
Svar
Från http://hathaway.cc/post/69201163472/how-to-edit-your-path-environment-variables-on-mac :
- Öppna terminal
- Kör
touch ~/.bash_profile; open ~/.bash_profile
-
I TextEdit, lägg till
export PATH="$HOME/.rbenv/bin:$PATH"
-
Spara .bash_profile-fil och Avsluta (Kommando + Q) Textredigering.
- Kör
source ~/.bash_profile
Svar
Om du använder zsh
som jag, måste du ändra ~/.zshrc
.
Kommentarer
- Eller i
.zprofile
- En del av min applikation lägger till något i PATH, men jag gjorde inte ’ t se
~/.zshrc
eller.zprofile
du sa? @timetofly - Du kan försöka skapa den filen i din hemkatalog och se om zsh plockar upp den.
- Från och med macOS Catalina använder Macs zsh som standardinloggningsskal och interaktivt skal – support.apple.com/en-us/HT208050
- ja !! tack sir!
Svar
För dem som inte vill ha besväret med textfiler och redigerare finns det ett GUI-verktyg som bra på GitHub .
Kommentarer
- Bra! Jag spenderade hela dagen på att lösa problemet med miljövariablerna och jag var ingenstans. Appen som du publicerade löste alla mina problem med miljön
Svar
För att lägga till en katalog i en sökväg finns det ett bättre alternativ i OS X: Alla poster i filen / etc / sökvägar läggs till i sökvägen innan något skal startas.
Redigera den här filen med:
sudo pico /etc/paths
För mer information, se: https://gist.github.com/Overbryd/1669348
Kommentarer
- Tack! för mig är detta det mest eleganta sättet att inkludera en ny sökväg
Svar
OSX har bara haft en förändring re miljövariabler och det var i Lion där ~ / .MacOSX / environment.plist togs bort. Även om det också har skett en förändring i standardskalet i 10.2 eller 10.3 från tsch till bash.
Du måste definiera vad du vill att miljövariabeln ska vara inställd på och vilken miljö du har.
Du måste också förstå skal och Unix som av dina kommentarer du inte har gjort helt. Det finns flera nbash-självstudier runt.
När det gäller dina poäng
- Du förstår rätt förutsatt att du befinner dig i ett sh-typskal (t.ex. bash eller zsh)
- Detta är för C-skal, t.ex. tcsh så kommer inte att fungera med de senaste standardinställningarna.
- Du måste skapa .profil så fungerar det
- Det är .bash_profile eller bättre .bashrc och du måste skapa filen först
- Helt korrekt 🙂 Använd TextEdit eller nano (eller emacs)
- Korrigera upp till OSX 10.7 och wy för att göra detta för program som anropas från arbetsytan t.ex. från Dock eller Finder (eller öppna )
Så 3 eller 4 fungerar om du ringer till programmet från kommandoraden (eller från ett program som startas på kommandoraden men inte öppet)
Som för program från GUI, se denna fråga
När det gäller internet är full av skräp – du måste ha tillräckligt med bakgrund för att förstå en artikel för eftersom du har upptäckt antar många att saker är felaktiga. StackExhnage-webbplatser bör vara bättre eftersom du kan se om ett svar har godkänts av antalet röster.
Kommentarer
- Jag har fortfarande inget resultat. Den länkade frågan tar mig inte till solu tion. Jag har en Mac i fyra år, men har fortfarande inte (hade ’ inte) erfarenhet av UNIX. Jag tror när svaret på ” Varför är det jävla så svårt? ” är ” plist togs bort, ändring i 10.2 eller 10.3, sh-typ skal, upp till 10.7 osv. ” svaret strider mot sig själv.
- Det kunde göras mycket lätt som i windows. Hur som helst … vad jag verkligen förväntade mig var sth. så här: 1- öppna hem dir 2- öppna terminal 3- skriv ” xxx ” 4-klick spara etc .. man får inte har tillräckligt med bakgrund för att bara ställa in en enkel variabel, åtminstone kan jag hitta en rätt lösning från dessa pannans svar på internet.
- Om du behöver miljövariabler måste du förstå vad de gör och det kräver bakgrund. Eftersom du inte angav vad du använde variablerna för måste jag ge alla möjliga skillnader. Anmärkning för Java-inställning JAVA_HOME är inte nödvändigtvis det bästa sättet (se Java-frågor)
- Min fråga handlade om INSTÄLLNING av variablerna. Varken om vad de gör eller om något annat som kräver mer info. Du kan självklart ställa in dem även utan bakgrund. Tack för ditt svar. Men som jag redan skrev räckte ett enkelt förslag till lösning, vilket jag redan har tack vare Bhas.
- Du borde verkligen inte ställa in variabler utan bakgrund, du måste veta vad de gör
Svar
Skapa fil i hemkatalogen: .bash_profile
(om inte har)
Öppna fil med textredigerare: vim / nano
(Detta är en dold fil, kanske inte synlig i Finder)
Lägg till env-variabler (lägg till dessa rader): export VARIABLE_NAME=VARIABLE_VALUE
(Lägg inte till mellanslag mellan variabel namn och värde)
Spara och avsluta.
Kör: source .bash_profile
i hemkatalogen på terminalen.
Kontrollera : Öppna ny terminal och kör echo $VARIABLE_NAME
. (Ska visa VARIABLE_VALUE
)
PS: Dessa variabler laddas kanske inte för vissa IDE: er måste du ladda med .env
-fil.
Kommentarer
- Välkommen till Ask Different och ta dig tid att svara på en fråga. Men när du skriver ett svar bör du fråga dig själv Hur skiljer sig detta från något av redan publicerade svar? För att hjälpa dig att acklimatisera, se Hur man skriver ett bra svar i vår Hjälpcenter
Svar
Öppna terminal
COMMAND-1
input: echo $ SHELL output: / bin / zsh
if din maskin använder zsh och använd sedan kommandona nedan |
Kommando – 2
vi ~ / .zshrc
den öppnar ny fil eller redigerar befintlig fil.
lägg nu till under raden och tryck på esc och ange: wq för att spara och stänga filen. exportera JAVA_HOME = $ (/ usr / libexec / java_home)
Kommando 3 :: för att tillämpa ändrar
källa ~ / .zshr
Kommando 4 ::
echo $ JAVA_HOME / Library / Internet Plug-Ins / JavaAppletPlugin.plugin / Innehåll / Hem
du ser utdata enligt ovanstående rad.