# Textpad funktioniert nicht :(



## MoeX (1. Jul 2011)

Hallo zusammen,
seit diesem Semster habe ich Informatik in der Uni, wo wir mit Textpad installieren.
Leider bekomme ich das aber bei mir nicht zum Laufen...
Gegoogelt habe ich schon wie ein Irrer, aber es klappt einfach nicht...

Also, was ich bisher (und in welcher Reihenfolge) gemacht habe:

1. JDK von oracle installiert
2. IDE von Netbeans installiert
3. Textpad 5 installiert
4. In Textpad unter Konfigurationen --> Einstellungen --> Extras "Werkzeuge" hinzugefügt
a) Drogramme\Java\jdk1.6.0_26\bin\javac​b) Drogramme\Java\jdk1.6.0_26\jre\bin\java.exe​5. In den Umgebungsvariablen die beiden oben genannten Pfade bei "Path" hinzugefügt.​
So, das war's so weit...
So bald ich nun einen  einen importierten Scanner nutze kommen aber Fehlermeldungen. 
Etwa kommt bei folgendem Programm:


```
import java.util.Scanner;

public class Fakultaet{

	public static int fakurek(int i){
		int erg=0;
		if (i>1){return (erg = i*fakurek(i-1));}
		else return 1;

	}


	public static int fakuiter(int i){
		int erg=1;
		int a=1;
		for (a=1; a<=i; a++)
			erg= erg * a;
		return erg;

	}


	public static void main (String[]args){
		System.out.println("Von welcher Zahl möchten Sie die Fakulteat erhalten?");
		Scanner inp = new Scanner(System.in);
		int i = inp.nextInt();
		int erg= fakuiter(i);

		System.out.println("Die gesuchte Fakultaet ist "+erg );

}
}
```

nachdem ich komplimiert (javac heißt das bei mir...) habe beim ausführen folgender Fehler:



> java.lang.NoClassDefFoundError: C:UsersMoeDesktopInfoFakultaet/java
> Caused by: java.lang.ClassNotFoundException: C:UsersMoeDesktopInfoFakultaet.java
> at java.net.URLClassLoader$1.run(Unknown Source)
> at java.security.AccessController.doPrivileged(Native Method)
> ...



Beim komplimieren stand noch es wäre erfolgreich.
In der Uni funktioniert das selbe Programm.

Bei mir zuhause werden auch die Klassen und Co. gar nicht gefärbt...
Da ist alles schwarz.
Von daher nehme ich an, dass irgendwie die Klassen fehlen...

Hat das evtl. etwas mit der API doc zu tun?
Diesen Teil habe ich nämlich hier
http://www.java-forum.org/einfuehrungen-erste-schritte/16581-jdk-sdk-installieren-einrichten.html
nicht wirklich verstanden...

Ich hoffe ihr könnt mir weiter helfen und seid von diesem Post, wie er ähnlich sicher schon zig mal gepostet wurde nicht zu sehr genervt ;-)

Schon mal Danke und Gruß,

Moe.

edit: danke an den admin fürs editieren. manchmal bin ich echt blind, eig. kann man die Aufforderung zu 
	
	
	
	





```
-Tags ja kaum übersehen -.-
```


----------



## radical_edward (1. Jul 2011)

Hi,
bin auch absolute java newbie. Aber müsstest Du die Class scanner nicht mit in dein Programm rein schreiben um ein Objekt dieser erzeugen zu können?


----------



## L-ectron-X (1. Jul 2011)

Ich gehe mal davon aus, dass du das JDK richtig installiert und eingerichtet hast, sonst würde dir der Compiler keine Exception vor die Füße werfen. Komisch ist nur die Ausgabe des Pfades zur Java-Datei. So ganz ohne Slashes...
Ein einfaches HelloWorld-Programm funktioniert?

Dein Programm funktioniert bei mir.


----------



## Gast2 (1. Jul 2011)

Nein, Scanner ist Teil der Java Api.
Das Kommando zum starten ist falsch, es gibt keine Klasse 
	
	
	
	





```
C:UsersMoeDesktopInfoFakultaet/java
```
. Wieso und warum das Textpad das aber so macht weiß ich auch nicht.


----------



## MoeX (2. Jul 2011)

@ Eike B:
ja, aber der Scanner funktioniert ja nicht, oder?

Hello world funktioniert.

Liegt aber nicht an meinem PC, irgend etwas mache ich falsch.
Habs nämlich schon auf einem anderen PC versucht und hatte den selben Fehler!

edit: hm ok, helloworld funktioniert doch auch nicht... komisch, hat schon mal getan^^



> java.lang.NoClassDefFoundError: C:\Users\Moe\Desktop\Helloworld/java
> Caused by: java.lang.ClassNotFoundException: C:\Users\Moe\Desktop\Helloworld.java
> at java.net.URLClassLoader$1.run(Unknown Source)
> at java.security.AccessController.doPrivileged(Native Method)
> ...



Dann liegt es wohl tatsächlich nicht an den Klassen.


----------



## L-ectron-X (2. Jul 2011)

Ich glaube, du macht grundlegende Fehler.
Beschreibe bitte mal genau, was du machst. Nenne dabei Konsoleneingaben und Dateinamen.
Vielleicht kommen wir der Sache so auf die Spur.


----------



## MoeX (2. Jul 2011)

1. Ich schreibe:


```
public class Helloworld{
```

2. Ich speichere auf meinem Desktop als 


> Helloworld.java


Dateityp: Java(*.java)
Dateiformat: PC
Zeichensatz: ANSI

3. Ich schreibe noch dazu:

```
public static void main (String[]args){

	System.out.println("Helloworld");


}
}
```

Wie gesagt, es ist auch komisch, dass Textpad die Klassen nicht färbt...

Dann komplimiere (javac) ich noch und es tritt kein Fehler auf.
Beim Ausführen des Programms kommt dann der bereits genannte Fehler.


----------



## Vokabular (2. Jul 2011)

Das heißt übrigens *kompilieren*, nicht "komplimieren".


----------



## gman (2. Jul 2011)

> Beim Ausführen des Programms kommt dann der bereits genannte Fehler.



Wie führst du denn das Programm aus? Du musst dich auch in dem Ordner "Desktop" befinden, und
auch das ".class" am ende weglassen.


----------



## MoeX (2. Jul 2011)

Naja, zum Ausführen gehe ich in Textpad auf
Extras --> Benutzerprogramme --> java

was meinst du mit "in dem ordner desktop sein"?
und wo soll ich das .class weglassen?


----------



## gman (2. Jul 2011)

Ok,

ich dachte du würdest die Klasse auf der Kommandozeile kompilieren, weil du irgendwo etwas von "javac"
geschrieben hast. Landet in dem Ordner in dem auch die "Helloworld.java" liegt eine "Helloworld.class"?
Wenn nicht dann macht Textpad irgendwas komisches beim Kompilieren.


----------



## MoeX (2. Jul 2011)

ja, da ist auch eine Helloworld.class

das mit javac hab ich geschrieben, weil nach der installation des textpads gar keine Benutzerprogramme vorhanden waren.
Die musste ich erst über Konfigurationen --> Eigenschaften --> Extras hinzufügen und heißen nun eben "java" und "javac"


----------



## L-ectron-X (2. Jul 2011)

Merkwürdig ist das schon...
Musst du denn Textpad benutzen? Wenn nicht, kannst du auch mal den Java Editor ausprobieren.


----------



## Marco13 (2. Jul 2011)

Ich verwende für schnelle Tests auch immer TextPad (ist sehr praktisch). 

Eigentlich dachte ich, dass TextPad beim installieren (wenn ein JDK vorhanden ist) automatisch die Funktionen einfügt. Und wenn nicht, gibt's dort AFAIR irgendeinen Menüpunkt, um diese Extras nachrächlich hinzuzufügen. Was steht denn unter Einstellungen->Extras bei dir so? Da sollte ein Unterpunkt sein "Java Compilieren", was steht denn da wenn man das auswählt?


----------



## MoeX (3. Jul 2011)

MoeX hat gesagt.:


> 4. In Textpad unter Konfigurationen --> Einstellungen --> Extras "Werkzeuge" hinzugefügt
> a) Drogramme\Java\jdk1.6.0_26\bin\javac​b) Drogramme\Java\jdk1.6.0_26\jre\bin\java.exe​5. In den Umgebungsvariablen die beiden oben genannten Pfade bei "Path" hinzugefügt.[/indent]



das habe ich natürlich nur gemacht, weil da eben KEIN Java kompilieren und so war...
da war einfach nichts.

edit:
Jetzt wird es ganz unheimlich^^
Ich habe alles mal nochmal deinstalliert und eine ältere Textpad- sowie eine ältere jdk-Version installiert.
Jetzt sind wenigstens mal die Klassen gefärbt.
Des weiteren kann ich meine schon geschriebenen Programme auc korrekt ausführen!

Möchte ich jedoch ein neues Programm komlimieren kommt die Meldung: "Die Angegebene Datei konte nicht gefunden werden"!
Ach ja, und die Werkzeuge "Java komplimieren" usw. stehen jetzt auch explizit da!


----------



## HoaX (3. Jul 2011)

Der Fehlermeldung nach startest du dein Programm mit

```
java UsersMoeDesktopInfoFakultaet.java
```
 oder ähnlich.
Es sollte aber

```
java UsersMoeDesktopInfoFakultaet
```
 heißen, ohne .java oder .class, nur der Klassenname.


----------



## Marco13 (3. Jul 2011)

Nebenbei: Das "Färben" des Textes hat mit den Extras nur indirekt zu tun: Das Syntax-Highlighting kann man unabhängig von den Extras installieren (das steht dann unter "Dokumentenklasse", IIRC). "Indirekt", weil er, wenn alles passt, die Java-Syntaxhervorhebung automatisch einrichten sollte...


----------



## MoeX (3. Jul 2011)

Yeeaappeeehhh
Es tut^^
Zwar etwas seltsam (ältere Textpad version, komplimieren muss ich mit "javac" und ausführen mit "Programm starten"), aber es tut 

Danke an alle die versucht haben zu helfen ;D


----------

