javac Schreibrecht

Farinlive

Mitglied
Ich hoffe Ihr könnt mir helfen.

Ich möchte Java lernen. Habe alles soweit Installiert und auch den Path eingetragen, der lautet:
C:\Program Files (x86)\Java\jdk1.7.0_02\bin

Doch wenn ich bei DOS das hier eingebe kommt sofort eine Fehlermeldung. Ich komm einfach nicht weiter.



Gruß Farinlive
 

Anhänge

  • DOS.jpg
    DOS.jpg
    39,1 KB · Aufrufe: 56
Zuletzt bearbeitet von einem Moderator:
Hast Du die java Datei in das bin Verzeichnis des JDK gespeichert?Laut Fehlermeldung kann wegen mangelnden Zugriffsrechten die class Datei nicht in dieses Verzeichnis gespeichert werden.
Du hast doch das bin Verzeichnis in PATH stehen ==> leg die Java Datei in einem sinnvolleren Verzeichnis mit entsprechenden Zugriffsrechten ab.
 
ich lehne mich hier wahrscheinlich zu weit aus dem Fenster, aber allgemein guter Tipp gilt:
Pfade mit Leerzeichen drin sind ungut in einer Welt von Umgebungsvariablen und Konsolen wo Leerzeichen auch Programm-Argumente trennen usw.

deine eigenen Java-Dateien solltest du wirklich unter c:/data/ usw. speichern,
evtl. Java neu installieren unter einem besseren Pfad, notfalls das ganze Betriebssystem 😉

oder nimm IDE Eclipse
 
Also ich hab die Java Datei in bin drin.
Der komplette Ordner jkd war schreibgeschützt. Das hab ich weggemacht.

Du hast doch das bin Verzeichnis in PATH stehen ==> leg die Java Datei in einem sinnvolleren Verzeichnis mit entsprechenden Zugriffsrechten ab.

Soll ich mir einfach in em JDK ornder ein eigene Ordner, die Java Datei darein tun und das dann mit dem Path abgelichen ?
 
Nein, erstell dir in deinem Benutzerverzeichnis einen Ordner "Javaprogramme" mit entsprechenden Unterordner für deine einzelnen Programme.
Dort kannst du dann (vorrausgesetzt PATH entsprechend konfiguriert) mit javac deine Programm kompilieren.
 
Soll ich mir einfach in em JDK ornder ein eigene Ordner, die Java Datei darein tun und das dann mit dem Path abgelichen ?
Nein, leg Dir einen Ordner in Deinem Benutzerverzeichnis an. an PATH brauchst Du da garnichts ändern. In Path stehen alle Pfade drin, die Dein Betriebssystem kennen muss, um irgendwelche Programme oder Bibliotheken zu starten bzw. zu nutzen.
Dadurch, dass das JDK bin Verzeichnis in PATH steht, kannst Du aus jeden Verzeichnis heraus mit
Code:
java ...
Deine Applikation starten. Wenn Du das nicht gemacht hättest müsstest Du z.B. jedes mal
Code:
C:\Program Files...\jdk...\bin\java ...
schreiben.
 
Ich weiß jetz nicht genau was Ihr mit Benutzerverzeichnis meint.
Ich hab auf meiner Festplatte C jetz einen neuen Ordner angelegt und da meine Java-Datei reinkopiert.

Wenn ich bei DOS nun javac HalloWelt.java eingebe, was muss dafur stehen ?
Der neue Ordner mit der Datei oder was ?
 
> was muss dafur stehen ?
'dafur' gibts nicht, mit 'dafür' wäre es noch schlimmer Satz, meinst du 'davor'?

mache es doch so wie im ersten Posting, wechsle in das Verzeichnis, oder macht das Probleme wie 'javac nicht gefunden'?
 
Ich weiß jetz nicht genau was Ihr mit Benutzerverzeichnis meint.
Ich hab auf meiner Festplatte C jetz einen neuen Ordner angelegt und da meine Java-Datei reinkopiert.
gibt es unter Win7 nicht ein Verzeichnis
Code:
C:\Benutzer...
?
Wenn ich bei DOS nun javac HalloWelt.java eingebe, was muss dafur stehen ?
Der neue Ordner mit der Datei oder was ?
Wenn Du
Code:
javac HalloWelt.java
aus dem Verzeichnis aufrufst in dem die Datei
Code:
HalloWelt.java
liegt passt das - sofern das bin Verzeichnis des JDK korrekt in PATH steht.
 
Verzeichnis (z.B. unter Dokumente) erstellen,
in das Verzeichnis deine .java-Dateien (Javacode) legen,
Path-Variable um "C:\Program Files\Java\jre6\bin\;C:\Program Files\Java\jdkVersionsnummer\bin\;" erweitern (in bin-Verzeichnissen sind ausführbare Programme),
cmd.exe öffnen, in das Verzeichnis mit den Javacode wechseln (cd),
"javac HelloWorld.java" eingeben (kompilieren),
"java HelloWorld" eingeben (interpretieren, ausführen).

Das Programm an sich könnte so aussehen:
Java:
public class HelloWorld {

public static void main(String[] args) {

}

}

... würde dann aber noch nichts ausgeben.

Es werden nach dem Kompilieren .class-Dateien erstellt (Java-Bytecode), diese können aber nicht unter C:\Program Files erstellt werden (siehe Fehlermeldung)...
 
ich hab jetz genau gemacht was hüteüberhüte gesagt hat.
Aber immer wieder kommt diese Fehlermeldung. ;(
 

Anhänge

  • DOS3.jpg
    DOS3.jpg
    48,8 KB · Aufrufe: 40
Zuletzt bearbeitet:
wenn du schon so viele Screenshots postest, dann tippe bitte auch
[c]echo %PATH%[/c] in deine Konsole ein

hast du bedacht eine neue Konsole nach Änderung der Umgebungsvariable zu öffnen?
 
Poste mal bitte deine Path-Variable und das Verzeichnis, in dem einmal java installiert und in dem das jdk installiert ist

(edit: slater war schneller:shock🙂
 
Zuletzt bearbeitet von einem Moderator:
Ok werd ich beim nächsten mal machen.

Ich hab gerade Dos geschlossen und wieder geöffnet aber immer noch der gleiche Fehler das javac endweder falsch geschrieben oder nicht gefunden werden konnte.
Ich versteh einfach nicht warum das nicht funktioniert.

Ich hab in meinem Path die Sachen reingeschrieben

C:\Program Files (x86)\Java\jdk1.7.0_02\bin;
C:\Program Files (x86)\Java\jre6\bin\;
C:\Program Files (x86)\Java\jre7\bin\


Also ich hab jdk1.7.0_02 in C:\Program Files (x86)\Java installiert.
Und jre7 auch in das selbe

Dann habe ich die Java-Datei (HalloWelt.java) in einen Ornder der Java heißt und in Documente ist reingelegt. Das dann bei Dos geöffnet und javac HalloWelt.java eingegeben.
Wieder kommt der Fehler mit javac falsch geschrieben oder konnte nicht gefunden werden


Ich weiß jetz echt nicht mehr was ich machen soll
 
Zuletzt bearbeitet:
Ich weiß jetz echt nicht mehr was ich machen soll

wie wärs damit, dich auf den Anfang deines Postings zu erinnern oder wie lange soll darauf gewartet werden?
Ok werd ich beim nächsten mal machen.
(bezieht sich hoffentlich auf
> tippe bitte auch [c]echo %PATH%[/c] in deine Konsole ein )




und dass du (wiederholt) nicht verstehst, dass etwas nicht funktioniert, kannst du von heute an für alle Zeit in Postings einsparen,
überlege mal wieviel Tipparbeit du dir selber und Lesearbeit anderen einsparst 😉
 
JAVA_HOME ist erstmal völlig egal. Interessant ist was im PATH steht, aber das wurde ja auch noch nen paar mal erwähnt 😛
 
Bei alten Windows-Versionen hieß es so. Wer weiß, was der TE installiert hat.

Das cmd-Fenster mit dem Begriff "Terminal" zu adeln, ist dagegen gewagt 😉
 
Ok ich entschuldige mich ^^ ich nenn es nie wieder DOS.

So nun wieder zu meinem Problem.
In meinem Path steht:
C:\Program Files (x86)\Java\jdk1.7.0_02\bin;
C:\Program Files (x86)\Java\jre7\bin\
 
Habe die \ entfernt aber funktioneirt trozdem nicht.

Ich weiß jetz irgendwie nicht mehr was ich machen soll.
Wenn ich das in den bin Ornder leg kommt der eine Fehler mit Zugriff verweigert.

Wenn ich das in ein anderes Verzeichnis packe kommt der Fehler das javac nicht geht.
 
Jetzt hast du die Datei immer noch in C:\Program~\... Änder das mal endlich! Dein Schreibzugriffsproblem hat nichts mit dem Path zu tun!
Ich würde noch behaupten, dass die Leerzeichen nach den Semikolons Probleme verursachen könnten, entferne diese.
Abgesehen davon ist [c]%JAVA_HOME%[/c] überhaupt nicht unnütz, denn wenn man das korrekt definiert hat, muss man in [c]%PATH%[/c] nur noch [c]%JAVA_HOME%\bin[/c] aufnehmen 😉
 
Pfade mit Leerzeichen drin sind ungut in einer Welt von Umgebungsvariablen und Konsolen wo Leerzeichen auch Programm-Argumente trennen usw.


unter windows ist "Program Files" == "Programme", also obwohl alles in "Program Files" installiert ist, linkt Windows "Programme" immer dahin

Code:
C:\Programme\Java\jdk1.7.0_02\bin
versteht windows



wenn er die konsole als admin startet, dürft es auch im programme ordner funktionieren, aber dazu ist der nicht gedacht, kopier die .java datei in eigene dateien und ruf dann
Code:
javac c:\users\deinname\documents\hellworld.java
auf
 
Zuletzt bearbeitet von einem Moderator:
Code:
C:\Programme\Java\jdk1.7.0_02\bin
versteht windows

Und welches System soll das zur Hölle können? Entweder ist die Antwort pauschalisiert oder absolut falsch. Zumindest in XP SP2/3 gehts nicht. Abgesehen davon greift der TO nicht auf [c]Program Files[/c] zu, sondern auf [c]Program Files (x86)[/c].
 
[c]echo %PATH%[/c], nicht [c]%PATH%[/c].
Startest du die cmd jeweils neu? Ansonsten wird die geänderte Variable nicht übernommen. Und hau die Leerzeichen nach den Semikolons weg (in [c]%PATH[/c]), dann müsste es klappen.
 
Und welches System soll das zur Hölle können? Entweder ist die Antwort pauschalisiert oder absolut falsch. Zumindest in XP SP2/3 gehts nicht. Abgesehen davon greift der TO nicht auf [c]Program Files[/c] zu, sondern auf [c]Program Files (x86)[/c].

win 7 mountet/linkt das (und ich meine beide).

@TE nu musst du ihm wieder sagen wo javac leigt, also
Code:
c:\programme\jdk7\bin\javac helloworld.java
hast du je schonmal die konsole benutzt?
 
noch so als anmerkung : nimm 1) das 6er mal ausm path und 2) deinstallier es komplett ...
ansonsten kommt wieder unser lieblingsfehler mit der unsupported major version weil du i-was mit J7 compilest ... es aber mit J6 ausführen willst ...
 
Also einfach eine pauschalisierte Fehlaussage deinerseits.

hmm ... also ich weis nicht ob du es ausprobiert hast ... aber unter meinem Win7Ultix64 ist CMD *um euch mal zu berichtigen : der korrekte name ist Befehlszeileninterpreter* in der lage den pfad "C:\Programme\" auf "C:\Program Files\" ordnungsgemäß zu mappen ...

das hat was mit dem seit NT6 *vista* im NTFS und dessen driver integriertem I18N zu tun ... und lässt sich in der registry manipulieren ...
 
Also einfach eine pauschalisierte Fehlaussage deinerseits.
xp ist tot. zumindest bei mir. pauschalisiert lass ich mir gefallen, aber falsch is es nicht. war richtig, der (x86) ordner wird im 64bit w7 allerdings nicht gemappt, nur der 64bit "program files" ordner


Ebenfalls falsch. Das Ziel ist, das Binaryverzeichnis von Java in die Path-Variable zu bringen.

Z7h8r.png

was ist daran falsch?
 
boah sind hier viele Postings, ich verstehe davon auch nur die Hälfte, um mal tröstend beizustehen 😉

ob mit Programme/ Program Files/ Program Files (x86) noch was zu schaffen ist weiß ich nicht,

wenn du mir unter den vielen unterschiedlichen Stimmen noch zuhörst, dann als eine Strategie:
verschiebe testweise Java, so dass du als Pfad
c:\Java\jdk1.7.0:02\bin
in Path eintragen musst oder noch kürzer
c:\Java\jdk1702\bin

ob die Installation dann noch geht ist eine Frage, kurzfristig sollte es bei diesem Pfad zusammen mit PATH-Umgebungsvariable aber klappen mit gefundenen javac-Programm,
bei ernsten Problemen evtl. Java neu installieren

vielleicht sind aber unter den anderen Vorschlägen weniger dramatische 😉
(edit: wenn schon fertig, umso besser)
 
Ich kann das Bild nicht sehen

konsole:
Code:
C:\Users\david.schmidt\Documents>c:\programme\java\jdk1.6.0_23\bin\javac Test.java

C:\Users\david.schmidt\Documents>java Test
hello world

C:\Users\david.schmidt\Documents>

klar sind korrekt eingestelle pfade praktisch, aber nicht nötig oder "richtiger"
 
Öffne das java- Verzeichnis ("C:\Program Files\Java\jre6\") im Windows- Explorer und kopiere den Pfad mit Shift+ Rechtsklick+ "Als Pfad kopieren"...
 
Und welches System soll das zur Hölle können? Entweder ist die Antwort pauschalisiert oder absolut falsch. Zumindest in XP SP2/3 gehts nicht. Abgesehen davon greift der TO nicht auf [c]Program Files[/c] zu, sondern auf [c]Program Files (x86)[/c].

Den umbruch hat Windows mit Win 7 gemacht, intern arbeitet windows mit C:\Programme\, im Explorer und in der Konsole zeigt er jedoch C:\Programm Files\ bzw. C:\Program Files (x86)\.

Windows arbeitet ja auch mit dem Synonym user und zeigt trotzdem faetzminator, oder Gossi oder what else...
 
Wieso nicht? Wenn man [c]%JAVA_HOME%[/c] verwendet, muss man nicht mal [c]%PATH%[/c] anpassen. Man muss also nichts anpassen, was nicht einer Version unterliegt (was mir AFAIR noch nie untergekommen ist).
um auch diesen Punkt hier zu erwähnen, klingt etwas komisch bei dir:
JAVA_HOME ist nur für Eclipse interessant oder sonstige höhere Tools, vielleicht Java im Browser,
für javac-Kommando in Konsole ist die JAVA_HOME-Umgebungsvariable unerheblich
 

Neue Themen


Zurück
Oben