# HelloWorld



## Maxxx (16. Dez 2009)

Ich stehe vor einem der allerersten Anfängerprobleme und komme tatsächlich nicht mehr weiter.

Was habe ich gemacht:
- HelloWorld Quellcode getippt und als HelloWorld.java abgespeichert.

Variablen Definiert:
Benutzervariable JAVA_HOME: C:\Programme\Java\jdk1.6.0_16;
Systemvariable PATH: C:\Programme\Java\jdk1.6.0_16\bin

HelloWorld.java liegt auf C: und wird durch den Befehl "dir" auch gelistet 
(ich habe auch verschiedene Speicherorte probiert, obwohl es ja eigentlich unwichtig ist wo diese Datei abgespeichert wird soweit ich weiss).

Gebe ich nun javac HelloWorld.java ein bekomme ich also folgende Fehlermeldung: 
C:\>javac HelloWorld.java
javac: file not found: HelloWorld.java
Usage: javac <options> <source files>
use -help for a list of possible options

Alles was ich bisher im Netz und meinen Büchern fand, war der Hinweis, das entsprechende Variablen definiert werden müssen - gut, habe ich offenbar getan (s.o.), und ich weiss nun wirklich nicht was ich da noch tun könnte.

Kann mir da jemand helfen bitte


----------



## javimka (16. Dez 2009)

javac funktioniert jedenfalls, das ist Mal das Wichtigste. Die Fehlermeldung ist dann klar, deine Datei wird nicht gefunden. Eröffne doch mal einen Ordner im C:/, verschiebe die Datei dort hinein und gehe auch in der Konsole mit cd dorthin und versuch es nochmals.


----------



## Maxxx (16. Dez 2009)

javimka hat gesagt.:


> javac funktioniert jedenfalls, das ist Mal das Wichtigste. Die Fehlermeldung ist dann klar, deine Datei wird nicht gefunden. Eröffne doch mal einen Ordner im C:/, verschiebe die Datei dort hinein und gehe auch in der Konsole mit cd dorthin und versuch es nochmals.



Hab ich gemacht, aber die Meldung bleibt dieselbe???:L


----------



## Final_Striker (16. Dez 2009)

C:\>javac HelloWorld.java

damit das funktioniert, muss die java-Datei direkt auf c: liegen.


----------



## Maxxx (16. Dez 2009)

Final_Striker hat gesagt.:


> C:\>javac HelloWorld.java
> 
> damit das funktioniert, muss die java-Datei direkt auf c: liegen.



Huch da bekomme ich diese Fehlermeldung:

C:\>javac HelloWorld.java
HelloWorld.java:8: error while writing HalloWorld: HalloWorld.class (Zugriff verweigert)
class HalloWorld {
^
1 error
C:\>


----------



## javimka (16. Dez 2009)

Maxxx hat gesagt.:


> HelloWorld.java liegt auf C: und wird durch den Befehl "dir" auch gelistet


Es lag wohl doch nicht im C 

Jetzt hast du einen Compilerfehler. Dein Code stimmt noch nicht.


----------



## Final_Striker (16. Dez 2009)

zeig mal den inhalt der datei


----------



## Ein Keks (16. Dez 2009)

schreib ma ein public vor das 
	
	
	
	





```
class HelloWorld {
```


----------



## Maxxx (16. Dez 2009)

Final_Striker hat gesagt.:


> zeig mal den inhalt der datei



Da ich mich noch gar nicht auskenne habe ich den Inhalten dieses codes vertraut:
pastebin - collaborative debugging tool

Sach mir bitte nicht der ist komplett falsch oder fehlerhaft


----------



## Maxxx (16. Dez 2009)

Ein Keks hat gesagt.:


> schreib ma ein public vor das
> 
> 
> 
> ...



...steht vor...


----------



## ARadauer (16. Dez 2009)

nein...


```
public class HalloWorld {

	public static void main(String[] args) {
	
	// Definiere eine Zeichenkette.
	String message="Hallo World!";
	
	// Gebe die Zeichenkette an der Konsole aus.
	System.out.println(message);
	}
}
```


----------



## javimka (16. Dez 2009)

zeig mal den Code


----------



## Maxxx (16. Dez 2009)

javimka hat gesagt.:


> Es lag wohl doch nicht im C
> 
> Jetzt hast du einen Compilerfehler. Dein Code stimmt noch nicht.



...Es lag schon überall und wurde hin und hergeschoben in meiner Not


----------



## Maxxx (16. Dez 2009)

ARadauer hat gesagt.:


> nein...
> 
> 
> ```
> ...



Damit bekomme ich das:

C:\>javac HelloWorld.java
HelloWorld.java:1: class HalloWorld is public, should be declared in a file named HalloWorld.java
public class HalloWorld {
       ^
1 error

C:\>


----------



## javimka (16. Dez 2009)

Heisst dein File auch sicher gleich wie die Klasse? HalloWorld.java?
Gross-/Kleinschreibung beachten


----------



## Marco13 (16. Dez 2009)

HelloWorld.java:1: class HalloWorld is public, should be declared in a file named HalloWorld.java

Übarlag' mel ganeu, woren des liagan könnta....


----------



## Maxxx (16. Dez 2009)

javimka hat gesagt.:


> Heisst dein File auch sicher gleich wie die Klasse? HalloWorld.java?
> Gross-/Kleinschreibung beachten



Hatte gerade nen Buchstabendreher, aber jetzt ist es korrogiert, ja es heißt HalloWorld.java und der Fehler bleibt derselbe.


----------



## Maxxx (16. Dez 2009)

Maxxx hat gesagt.:


> Hatte gerade nen Buchstabendreher, aber jetzt ist es korrogiert, ja es heißt HalloWorld.java und der Fehler bleibt derselbe.


... bin ich blind oder wo liegt mein Fehler:bahnhof:


----------



## javimka (16. Dez 2009)

Deine Klasse heisst HalloWorld, dein File heisst HelloWorld


----------



## Maxxx (16. Dez 2009)

javimka hat gesagt.:


> Deine Klasse heisst HalloWorld, dein File heisst HelloWorld



Habs ja geändert und bekomme das:

C:\>javac HalloWorld.java
HalloWorld.java:1: error while writing HalloWorld: HalloWorld.class (Zugriff verweigert)
public class HalloWorld {
       ^
1 error

C:\>


----------



## javimka (16. Dez 2009)

Du hast wohl keine Schreibrechte im C:
Erstelle einen neuen Ordner, schmeiss die .java-Datei da rein, gehe auch mit der Konsole mit cd dahin und compiliere dort.


----------



## Marco13 (16. Dez 2009)

Ist das vielleicht irgendsoein Vista-Crap, dass man (oder javac) Adminrechte braucht um auf C:\ schreiben zu dürfen ???:L Existiert eine "HelloWorld.class", die Schreibgeschützt ist? Wenn ja, kannst du die löschen?


----------



## noobadix (16. Dez 2009)

Hallo,

im Wurzelverzeichnis c zu arbeiten birgt Risiken. Besser im home-Ordner arbeiten.

1. Sind alle Klammern geschlossen?
2. Sind Klassen- und Dateiname identisch?
3. Sind schreib- und ausführrechte im Verzeichnis und für die Datein gesetzt?

Dann sollte eigentlich nichts schief gehen, wenn du den code kopiert hast.

Gruß
N.


----------



## Schandro (16. Dez 2009)

liegts vllt. am UAC. das java keine schreibrechte direkt auf C hat?

€dit: 3 Antworten vor mir? 8 minuten zu spät? omfg ich werd alt.^^


----------



## Maxxx (17. Dez 2009)

javimka hat gesagt.:


> Du hast wohl keine Schreibrechte im C:
> Erstelle einen neuen Ordner, schmeiss die .java-Datei da rein, gehe auch mit der Konsole mit cd dahin und compiliere dort.



Das hat funktioniert, ich habe jetzt eine class Datei in dem neuangelegten Ordner:toll:

D.h. das Problem waren also die fehlenden Schreibrechte? dann kann das alles ja nichts werden ... ich habe es auch als Admin versucht, habe aber die gleichen Probleme gehabt, ich mein wenn ich schon als Admin keine Schreibrechte habe, als was denn sonst???:L

Kann man das irgendwie ändern?


----------



## Maxxx (17. Dez 2009)

Marco13 hat gesagt.:


> Ist das vielleicht irgendsoein Vista-Crap, dass man (oder javac) Adminrechte braucht um auf C:\ schreiben zu dürfen ???


Jepp, Vista


Schandro hat gesagt.:


> liegts vllt. am UAC. das java keine schreibrechte direkt auf C hat?



Offenbar war/ist das dass Problem, da soll erst mal jemand drauf kommen, immerhin habe ich es auch als Admin versucht:noe:


----------



## javimka (17. Dez 2009)

Es ist so, dass das C nicht dir "gehört", sondern dem Administrator. Gemeint ist damit, der versteckte Administrator Account, nicht dein Account, obwohl du auch Administrator Rechte haben könntest. Das kann man über die Eigenschaften ändern.


----------



## Maxxx (17. Dez 2009)

javimka hat gesagt.:


> Es ist so, dass das C nicht dir "gehört", sondern dem Administrator. Gemeint ist damit, der versteckte Administrator Account, nicht dein Account, obwohl du auch Administrator Rechte haben könntest. Das kann man über die Eigenschaften ändern.



Das komische ist, dass mir da für das Admin Konto aber sämtliche Berechtigungen zustehen.


----------



## javimka (17. Dez 2009)

Da musst du Microsoft fragen, was sie sich dabei gedacht haben


----------



## Maxxx (17. Dez 2009)

Oder mich langsam mit Linux vertraut machen


----------



## Maxxx (17. Dez 2009)

Problem gelöst!

Dank dir/euch


----------



## Marco13 (17. Dez 2009)

Maxxx hat gesagt.:


> Das komische ist, dass mir da für das Admin Konto aber sämtliche Berechtigungen zustehen.



Deswegen war meine Frage auch so gestellt:
_Ist das vielleicht irgendsoein Vista-Crap, dass man (*oder javac*) Adminrechte braucht..._

Offenbar durftest DU ja die "HelloWorld.java" auf C:\ erstellen und verändern. Aber die .class-Datei wird ja nicht von DIR erzeugt, sondern von javac ... (das sind so Sachen, die ich Vista (auf Basis des wenigen, was ich bisher damit zu tun hatte) zutrauen würde....)


----------

