Lyckas ej sätta PATH korrket för Java

Permalänk
Medlem

Lyckas ej sätta PATH korrket för Java

Hej

Jag sitter och försöker börja testa Java lite, men fastnar direkt.
Har laddat ner senaste JDK7 och installerat, testat kommandot java -version i Win CMD. Detta funkar och CMD skriver ut vilken version jag har...

Men när jag sedan ska sätta PATH permanent så verkar jag göra fel, för när jag testar att köra kommandot javac test.java så får jag följande felmeddelande:

"javac är inte ett internt kommando, externt kommando, program eller kommandofil."

Med andra ord är väll sökvägen för PATH inkorrekt eller så har jag skrivit fel i koden?

import javax.swing.*;

public class Test {
public static void main (String[] arg) (
JOptionPane.showMessageDialog (null, "Tryck OK för att se URL");
System.exit(0);
}
}

Någon idé?

Nicke

Permalänk
Medlem

När du skriver java -version i CMD och det fungerar, står du då i Javas bin-katalog?

Om du i CMD skriver path vad står det då?

Hur sätter du du PATH permanent, det är väl för maskinen och inte din användare? (-m om du använder setx)

Har du startat om Windows efter det?

Version av Windows? UAC aktiverat?

Ang. Java-kod kan jag inte hjälpa till, bara att få igång eländet på Windows.

Visa signatur

mb = millibit!

Permalänk
Medlem

Kan det vara så att du satt PATH till JREn /bin istället för JDK /bin ? JREn brukar inte ha javac medan JDK har både java å javac.

Förövrigt kan jag rekommendera att du använder en IDE.

Jag är också tveksamt till att din kodsnutt funkar, lättast å bara göra en syso istället

Visa signatur

Spelrigg: 800D| i7 3930K@4,7 GHz - Custom WC | 32 GB Kingston HyperX Beast | 7970 GHz X-Edition |1x30 Dell U3011, 2x27" | Sennheiser HD650 | Xonar Essence STX |
Laptop: G74SX 17,3" 120 Hz 3D |
Server: Phenom II X4 955BE | Corsair XMS3 8 GB | 16 HDDs, 27 TB |
HTPCs: ASUS EEE Box 1.8 Ghz | Blu-Ray | OCZ Vertex 2 60 GB | 4 GB RAM |

Permalänk
Medlem
Skrivet av Skrotis:

När du skriver java -version i CMD och det fungerar, står du då i Javas bin-katalog?

Om du i CMD skriver path vad står det då?

Hur sätter du du PATH permanent, det är väl för maskinen och inte din användare? (-m om du använder setx)

Har du startat om Windows efter det?

Version av Windows? UAC aktiverat?

Ang. Java-kod kan jag inte hjälpa till, bara att få igång eländet på Windows.

Windows 7 64-bit, japp har startat om windows.
-m? Setx?

Ska testa det med CMD...

Skrivet av Gnejs:

Kan det vara så att du satt PATH till JREn /bin istället för JDK /bin ? JREn brukar inte ha javac medan JDK har både java å javac.

Förövrigt kan jag rekommendera att du använder en IDE.

Jag är också tveksamt till att din kodsnutt funkar, lättast å bara göra en syso istället

Ärligt talat, glömt att kolla :s

"Kodsnutten" ska funka, den kommer från en bok om java som används för gymnasiala kurser...
Syso?

Permalänk
Medlem
Skrivet av Skrotis:

När du skriver java -version i CMD och det fungerar, står du då i Javas bin-katalog?

Om du i CMD skriver path vad står det då?

Version av Windows? UAC aktiverat?

Ang. Java-kod kan jag inte hjälpa till, bara att få igång eländet på Windows.

Glömde säga att UAC är väll default i Wndows, har inte grejat med det... Har liksom inte stört hitills...

Detta kommer upp om jag skriver path i CMD:

C:\Users\Niklas\Desktop\Java Programming\javamapp>path
PATH=C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bi
n\x86;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System3
2\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-S
tatic;C:\Program Files (x86)\QuickTime\QTSystem\

Och detta är den PATH väg som jag angav: C:\Program Files\Java\jdk1.7.0_05\bin
Jag hittade ju ingen PATH alls, så jag skapade en ny och kopierade sökvägen klistrade in den och kallar den för Java PATH

Nicke

Permalänk
Hedersmedlem

Att java -version fungerar beror nog på att den kör java i windowsmappen. När man installerar Oracle JRE så läggs det några sådana i windows\system32-mappen, som självklart är med i PATH.

Skrivet av ApeviaX:

[...]
Jag hittade ju ingen PATH alls, så jag skapade en ny och kopierade sökvägen klistrade in den och kallar den för Java PATH

Nicke

Var hittade du den inte?
Fönstret för miljövariabler ska det finnas en för systemet. PATH är en speciell variabel, normalt ersätter användarvariabler systemvariabler om de finns men just PATH adderas ihop. Namnet på variabeln ska vara PATH, inget annat.

Visa signatur

Forumregler | Feedbackforumet | Något som behöver modereras? Tryck på Anmäl inlägget och ge en anledning, någon moderator kommer granska inlägget och göra (egen) bedömning
"Fate. Protects fools, little children and ships named Enterprise." - Riker - ST:TNG

Permalänk
Medlem
Skrivet av ApeviaX:

Glömde säga att UAC är väll default i Wndows, har inte grejat med det... Har liksom inte stört hitills...

Detta kommer upp om jag skriver path i CMD:

C:\Users\Niklas\Desktop\Java Programming\javamapp>path
PATH=C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bi
n\x86;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System3
2\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-S
tatic;C:\Program Files (x86)\QuickTime\QTSystem\

Och detta är den PATH väg som jag angav: C:\Program Files\Java\jdk1.7.0_05\bin
Jag hittade ju ingen PATH alls, så jag skapade en ny och kopierade sökvägen klistrade in den och kallar den för Java PATH

Nicke

  1. Tryck WinKey + Break/Pause

  2. Välj Avancerade systeminställningar

  3. Ovanför knapparna Ok/Avbryt finns en knapp Miljövariabler (eller liknande). Klicka på den

  4. Leta upp Path i rutan Systemvariabler och välj edit på den

  5. Lägg till "C:\Program Files\Java\jdk1.7.0_05\bin"; i början eller slutet på det som redan står där (glöm inte semikolon). Klicka på Ok

  6. Stäng alla inställningsrutor och starta om kommandofönstret

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem
Skrivet av Aqualize:

Att java -version fungerar beror nog på att den kör java i windowsmappen. När man installerar Oracle JRE så läggs det några sådana i windows\system32-mappen, som självklart är med i PATH.

Var hittade du den inte?
Fönstret för miljövariabler ska det finnas en för systemet. PATH är en speciell variabel, normalt ersätter användarvariabler systemvariabler om de finns men just PATH adderas ihop. Namnet på variabeln ska vara PATH, inget annat.

Precis där under miljörvariabler, eftersom jag inte hitta någon som hette path skapade jag den där...

Skrivet av Teknocide:
  1. Tryck WinKey + Break/Pause

  2. Välj Avancerade systeminställningar

  3. Ovanför knapparna Ok/Avbryt finns en knapp Miljövariabler (eller liknande). Klicka på den

  4. Leta upp Path i rutan Systemvariabler och välj edit på den

  5. Lägg till "C:\Program Files\Java\jdk1.7.0_05\bin"; i början eller slutet på det som redan står där (glöm inte semikolon). Klicka på Ok

  6. Stäng alla inställningsrutor och starta om kommandofönstret

Aha, ska testa det, semikolon + mellanslag eller bara semikolon?

BTW, det är ju inte löst förrän det funkar, men tack hittills alla för snabb hjälp

Permalänk
Medlem

Setx är ett kommando för att bl.a. sätta variabler och inte behöva starta om Windows för att de ska aktiveras, tyvärr är den lite buggig i W2K8 och troligtvis i W7 också, så man kan behöva starta om ändå.

För att göra motsvarande manöver som beskrivs ovan skriver man bara följande i CMD:

setx PATH "%PATH%;C:\Program Files\Java\jdk1.7.0_05\bin" /m

Kom på en sak till.
Har du JAVA_HOME satt?

Visa signatur

mb = millibit!

Permalänk
Medlem
Skrivet av Skrotis:

Setx är ett kommando för att bl.a. sätta variabler och inte behöva starta om Windows för att de ska aktiveras, tyvärr är den lite buggig i W2K8 och troligtvis i W7 också, så man kan behöva starta om ändå.

För att göra motsvarande manöver som beskrivs ovan skriver man bara följande i CMD:

setx PATH "%PATH%;C:\Program Files\Java\jdk1.7.0_05\bin" /m

Kom på en sak till.
Har du JAVA_HOME satt?

Nepp JAVA_HOME stod inget om i boken så det har ja ej koll på.

Jag provade att kopiera följande till CMD:

setx PATH "%PATH%;C:\Program Files\Java\jdk1.7.0_05\bin" /m

Får bara felmeddelandet:

FEL: Åtkomst till registersökvägen nekades.

Permalänk
Medlem

Starta CMD som Administratör.

Det är inte alltid man behöver JAVA_HOME, men det skadar inte att ha den satt, ska vara satt till C:\Program Files\Java\jdk1.7.0_05.

Visa signatur

mb = millibit!

Permalänk
Medlem
Skrivet av Skrotis:

Starta CMD som Administratör.

Det är inte alltid man behöver JAVA_HOME, men det skadar inte att ha den satt, ska vara satt till C:\Program Files\Java\jdk1.7.0_05.

Ska prova när knatten somnat.
Men du menar att det kanske kan hjälpa mig för att få igång javac kommandot?

Permalänk
Medlem
Skrivet av ApeviaX:

Ska prova när knatten somnat.
Men du menar att det kanske kan hjälpa mig för att få igång javac kommandot?

Om du följer mina anvisning ovan kommer det fungera, garanterat, såvida du installerat JDK:n på rätt sätt.

JAVA_HOME behöver inte sättas för kompilering.
Skickades från m.sweclockers.com

Visa signatur

Kom-pa-TI-bilitet

Permalänk
Medlem
Skrivet av ApeviaX:

Ska prova när knatten somnat.
Men du menar att det kanske kan hjälpa mig för att få igång javac kommandot?

Tja, har inte testat det med JAVA_HOME ännu, men hur exakt fixar jag det?

Tror nog att jag snabbare får igång "skiten" om jag kanske kunde få en enkel guide i att installera JDK från start så jag kan börja sätta mig in i själva programmerande lärandet... Har ju sommar följt instruktionerna i min bok, men sitter fast...

Utöver Windows 7 kör jag Ubuntu, något tips där i Linuxvärlden?

Permalänk
Medlem

Börja med att sätta PATH korrekt, det är viktigast.

Antingen med min kommandosträng, eller med Teknocides instruktioner.

Det som är viktigt är att alla sökvägar separerars med semikolon och det ska inte vara något mellanslag före eller efter det, så för dig ska det vara:

C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files\Java\jdk1.7.0_05\bin;

Visa signatur

mb = millibit!

Permalänk
Medlem
Skrivet av Skrotis:

Börja med att sätta PATH korrekt, det är viktigast.

Antingen med min kommandosträng, eller med Teknocides instruktioner.

Det som är viktigt är att alla sökvägar separerars med semikolon och det ska inte vara något mellanslag före eller efter det, så för dig ska det vara:

C:\Program Files (x86)\AMD APP\bin\x86_64;C:\Program Files (x86)\AMD APP\bin\x86;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;C:\Program Files (x86)\QuickTime\QTSystem\;C:\Program Files\Java\jdk1.7.0_05\bin;

Hej igen

Jag måste ha gjort fel med din kommandosträng, hur som helst, läste och läste igen, efter jag insett att det fanns en path (som ni hade sagt) och jag kopierat det hela så blev det bättre, nu funkar javac kommandot såvitt jag förstår, nu är det nog dock något jag gjort fel i de "koder" jag skrivit ner...

Följande ifrån CMD:

Copyright (c) 2009 Microsoft Corporation. Med ensamrätt.

C:\Users\Niklas\Desktop\Java Programming>cd javamapp

C:\Users\Niklas\Desktop\Java Programming\javamapp>javac test.java
test.java:4: error: ';' expected
public static void main (String[] arg) (
^
test.java:6: error: <identifier> expected
System.exit(0);
^
test.java:6: error: illegal start of type
System.exit(0);
^
test.java:8: error: class, interface, or enum expected
}
^
4 errors

C:\Users\Niklas\Desktop\Java Programming\javamapp>

EDIT: Provade även densamma "Kod" fast från boken, samma som jag klistrat in tidigare, då kom detta upp:

C:\Users\Niklas\Desktop\Java Programming\javamapp>javac hej.java
hej.java:3: error: class Hej is public, should be declared in a file named Hej.j
ava
public class Hej {
^
1 error

Niklas

Permalänk
Medlem

Heter filen Hej.java då (stor bokstav)?;o
Rekommenderar dig ännu en gång att använda en IDE så du får hjälp med kompileringsfel medan du kodar

Visa signatur

Spelrigg: 800D| i7 3930K@4,7 GHz - Custom WC | 32 GB Kingston HyperX Beast | 7970 GHz X-Edition |1x30 Dell U3011, 2x27" | Sennheiser HD650 | Xonar Essence STX |
Laptop: G74SX 17,3" 120 Hz 3D |
Server: Phenom II X4 955BE | Corsair XMS3 8 GB | 16 HDDs, 27 TB |
HTPCs: ASUS EEE Box 1.8 Ghz | Blu-Ray | OCZ Vertex 2 60 GB | 4 GB RAM |

Permalänk
Entusiast

Kom ihåg att logga om efter att ha ändrat någon av systemvariablerna. Annars fungerar dem inte "system-wide"

Visa signatur

Bästa programmen till Linux - v2.0
Linux-guide: Val av grafisk miljö. (Att välja distribution).
-
Everyone should have a SGoC in their systems (SGoC: SysGhost on a Chip)

Permalänk
Medlem
Skrivet av Gnejs:

Heter filen Hej.java då (stor bokstav)?;o
Rekommenderar dig ännu en gång att använda en IDE så du får hjälp med kompileringsfel medan du kodar

Jasså var det därför, ja jo jag har tänkt det, men var lite ivrig att testa att det funkade först. Ska fixa IDE då.

Skrivet av SysGhost:

Kom ihåg att logga om efter att ha ändrat någon av systemvariablerna. Annars fungerar dem inte "system-wide"

Jag sket faktiskt i det denna gång, p.g.a en operation som jag inte ville avbryta, men får checka imorrn.