# Compilieren funktioniert nicht



## Rubens (25. Februar 2008)

Hi Leute.
Bin ein absoluter Neuling in der Java-Programierwelt.
Benutze Java oriented Editing und habe den JDK 1.6.0_04 und den JDK 1.5.0_14 heruntergeladen und benutze den Pfad des Compilers des JDK 1.6.0_04
Ich bekomme aber folgende Fehlermeldung beim Compilieren:

javac: target release 1.4 conflicts with default source release 1.5.

Ich habe jetzt schon einiges versucht aber ich bekomm nicht einmal das einfache HalloWelt Programm zum laufen.

Vielleicht könnt ihr mir weiter helfen.
Vielen Dank schonmal


----------



## shutdown (25. Februar 2008)

Gibts du beim Kompilieren an, dass du mit 1.4 kompatibel wärst?
Gib mal in der Kommandozeile
java -version
ein - was gibt er aus?


----------



## zeja (25. Februar 2008)

Offenbar ist bei dir das Target auf 1.4 gestellt, was aber nicht geht wenn Source auf 1.5 steht. Also versuchst du Java 1.5 Source auf 1.4 zu kompilieren und das gefällt dem Compiler nicht.  

Wie compilierst du denn?


----------



## Rubens (25. Februar 2008)

Hi,
Zu shutdown:
Leider weiss ich nicht genau was du mit Komandozeile meinst, deswegen bin ich über meine Java-Version noch nicht schlauer geworden

Zu zeja:

Leider weiss ich auch bei dir nicht was du genau meinst. Ich kompiliere mit der javac.exe aus dem jdk 1.6.0_04. Ich speichere mein Programm ab und betätige dann den Button "Compilieren" in meinem JOE-Editor.

also wie gesagt arbeite ich ja mit JOE. In den Optionen kann ich unter "Compiler" ein Ziel-VM zwischen 1.1, 1.2, 1.3, 1.4 wählen. (Was auch immer Ziel-VM heisst), aber egal was ich wähle, er bringt immer den gleichen Fehler. Also
javac: target release 1.3 (1.1,bzw. 1.2,bzw. 1.4) conflicts with default source release 1.5.

Also eine generelle frage wäre erst einmal was diese Zahlen bedeuten, sind das versionen von jdk´s oder Compilern 

Vielen Dank schonmal und sorry dass ich euch mit meiner absoluten Ahnungslosigkeit nerve.


----------



## shutdown (25. Februar 2008)

Kommandozeile: Start->Ausführen->cmd eingeben



> Also eine generelle frage wäre erst einmal was diese Zahlen bedeuten, sind das versionen von jdk´s oder Compilern



Java wird weiterentwickelt - es steht also sowohl für neue jdk's als auch für neue Compiler.
Und für Funktionen, die neu dazukommen.

Wenn du auf ein Zielsystem (Programmversion) programmierst, darfst du auch nur entsprechende Methoden verwenden, die dann unterstützt werden. 

Und derzeit spricht die Fehlermeldung dafür, dass du was verwendest, was deine Zielversion net kann.


----------



## Rubens (25. Februar 2008)

Hi.

Ok, danke dir!

Dann schau ich mich mal nach einer neueren JOE Version um, denn der jdk 1.6.0 ist ja der neuste jdk, wenn ich dazu noch den neusten JOE hab bin ich überall auf dem neusten stand


----------



## zeja (25. Februar 2008)

Wieso benutzt du denn diesen Editor? Der wird seit 2003 nicht mehr weiterentwickelt (http://www.javaeditor.de/) und unterstützt daher wahrscheinlich auch das JDK 1.6 nicht so recht.


----------



## Stigma (25. Februar 2008)

Moin

Ich bin der Meinung das Java Programmierer anfangs mit dem Java-Editor, danach mit einem gewöhnlichen Text-Editor und nach ca. einem Jahr auf Eclipse wechseln sollten.  

Also: Java-Editor --> Text-Editor --> Eclipse.

P.S. Meine Empfehlungen sind an den privaten Programmierer gerichtet.


----------



## zeja (25. Februar 2008)

Stigma hat gesagt.:


> Java-Editor --> Text-Editor --> Eclipse



Auch wenn das Offtopic ist: Wieso erste den Java-Editor? Wieso sollte man dann noch wieder nen Texteditor benutzen? Ist auf jeden Fall Geschmackssache und eine Sache wo man es lernt. Mit ein wenig Unterstützung ist Text-Editor zu empfehlen, ohne eine kleine IDE.

Kompilieren mit Konsole sollte man allerdings auf jeden Fall mal gemacht haben. Es ist einfach unerlässlich die Fehlermeldung verstehen zu lernen.

Zurück zum Thema: Rubens, versuchst du dir Java selber beizubringen? Vllt können wir dir da noch Tipps geben wie es sich leicht lernen lässt


----------



## Stigma (25. Februar 2008)

> Kompilieren mit Konsole sollte man allerdings auf jeden Fall mal gemacht haben. Es ist einfach unerlässlich die Fehlermeldung verstehen zu lernen.



Der Meinung bin ich auch, allerdings denke ich so:

Anfangs sollte man Java Kennenlernen. Dies geschieht mir dem Java-Editor, den bei diesem muss man sich nicht großartig um das Compaliren oder Starten der Appliaktion kümmern. 
Anfangs will man sich als Einsteiger um das wesentliche kümmern mann will Ergebnisse!

Wurde nun das Interesse geweckt, kann man sich mit einem Beispielprogramm (kleine App) und einer Text-Datei an die nicht mehr übliche Art und Weise ranwagen wie früher mahl Programme geschrieben worden sind. Damit lernt man den Compiler und den Java-Code kennen.

Nachdem nun die ersten Schritte bewältigt worden sind, und man sich ein fundiertes Grundwissen angeeignet hat, kann man mit Eclipse arbeiten.

P.S. Sich Java selbst beizubringen ist sehr schwer. Wichtig bei der ganzen Sache ist zu wissen wo Informationen sind die dir und deinem Programm weiterhelfen. Eine dieser Quellen ist tutorials.de/java


----------



## Rubens (26. Februar 2008)

Hi, 

Ja, ich verscuh mirs selbst beizubringen und steh momentan noch ziemlich im Wald.

Auf JOE bin ich gekommen weil das der einzige editor war, den ich kannte. 
Was nicht schlecht wäre, wäre eine Vorlage, die ich dann auf den Rechner übertragen könnte. Weil als erstes muss mal die Idee für ein Program dasein damit man es auf PC übertragen kann.


Ich lasse mir gerne Tipps geben. jederzeit gerne, freu mich über jede Hilfe.

Im Übrigen funktioniert mein Comiler jetzt. Und ich weiss jett auch dass meine bisherigen Programe viele Fehler haben oder nicht  da liefern was ich mir erhoffte.

Vielen Dank für alles.


----------



## shutdown (26. Februar 2008)

Unser erstes Programm im Studium war Tetris.

Und davon kann ich nur abraten!

Gut, dass man am Anfang von Patterns noch nichts gehört haben kann, ist klar.
Aber wenn man grade mal mit JButtons und JPanels sich ne GUI zusammengebastelt hat, dann ein Spiel zu programmieren, wo es auf ein bisschen mehr ankommt - völliger Blödsinn.

Ich würde dir raten - auch wenn es jetzt blöd klingt - mit einfachem Verarbeiten von Textdateien anzufangen. Da lernst du die elementarsten Datenstrukturen kennen und musst dich nicht um ne GUI kümmern.

Ein Beispiel könnte sein, dass du dir alle Zeilen einer Datei ausgeben lässt, in denen ein bestimmtes Wort vorkommt.

Wenn du damit klar kommst, würde ich ein bisschen weiter mit dem Dateisystem arbeiten.
Eine rekursive Dateisuche (auch mit Inhalt der Datei durchsuchen) dürfte da am Ende stehen.

Und wenn du das hast, dann würde ich mich mal mit GUIs beschäftigen.


----------



## Klein0r (26. Februar 2008)

Ich weiß ja nicht wie weit du schon Erfahrungen in sachen OOP hast.
Falls du garnich weißt wovon da die Rest ist würde ich erstmal ein Programmiersprachenunabhängiges Tutorial in der richtung Suchen.

Ich denke ohne die Grundlagen der OOP kommt man bei Java nicht weit. Daher macht es wenig sinn ein Paar Klassen zu nutzen und garnich zu verstehen was der Unterschied zwischen einer Klasse und einem Objekt ist. Viele Begriffe tauchen einfach viel zu oft auf als das man das sein lassen könnte. Wenn dann irgendwann da steht "Die Klasse blabla muss das Interface xyz implementieren wodurch die funktionen blabla ..." oder "muss die methode abc überschrieben/überladen werden" hat er recht wenig davon wenn er sich mal mit dem Auslesen und schreiben von Textdateien beschäftigt hat 

Seh ich zumindest so...


----------



## shutdown (26. Februar 2008)

Wenn er tatsächlich noch nichts davon gehört hat, kann ich dir nur zustimmen.
Ich gehe aber derzeit davon aus, dass er schon in einer anderen Sprache programmiert hat - da er ja Editoren, JDK's kennt und schon was geschrieben hat, was irgendwas macht.


----------



## Stigma (26. Februar 2008)

Also ich will dir keine Aufgaben geben die du dann mit Hilfe von Java umsetzen musst, nein, ich empfehle dir, dir ein gratis Buch im Netz zu suchen und dies durchzuarbeiten. als Hilfe nimmst du die Javainsel und das Java Handbuch.

Toi toi toi!*

*ich hoffe man schreibt es so.


----------



## Rubens (26. Februar 2008)

Hi.

Also von oop und gui hab ich noch nichts gehört.
Also Tetris zu installieren wäre ich glaub ich bei weitem nicht in der Lage.
Was ich bisher schon für Programme gemacht habe, sind lediglich Sortierverfahren, bei denen ich in einer Reihe mit festen Grenzen z.B. alle Quadratzahlen suche. Also ich konzentriere mich da mehr auf mathematische simple Aufgabenstellungen.
Aber selbst diese Programme scheinen mir nicht das auszugeben was ich eigentlich gesucht habe.

Java ist meine erste Sprache die ich ausprobiere. Hatte zuvor noch keinen Kontakt zum programieren. Von JDK´s, Editoren, Interpretern; Applets, Applikationen bla bla bla, weiss ich lediglich durch meine Nachforschungen im Internet, da ja auch mein Compiler nicht funktioniert hat.

Ich stell mal eins meiner "Programme" hier rein.wenn ihr lust habt könnt ihrs euch ja mal anschauen.

```
public class Sortierverfahren
{
	public static void main (String [] args) {
	
		
		/*Reihungen */
	
	int n=6;	
	int [ ] reihung;
	reihung = new int[n];
	int treffer =1 ;
        int links=2 ;
        int rechts=n-1; 
        int mitte=2;  
    
	for (int i=0;i<n ;i=i+1 ) {
         reihung [i]=i*i;

    }

	         int i= reihung [(links+rechts)/2];
		 int nach_links= n+1;	
	 	 int nach_rechts= n-1; 
    
    while (nach_links <= nach_rechts) {
          while (reihung[nach_rechts]<n) {
                nach_rechts;
	   	  }
          while (reihung[nach_links]>n) {
                nach_links;
		  }	
          if (nach_links >= nach_rechts;
              int reihung[nach_links]=k;
              int k= reihung[nach_rechts];
              int reihung[nach_links]=reihung[nach_rechts];) {
              nach_links=nach_links-1;
              nach_rechts=nach_rechts+1;
		  } 
           for (i=0;i<n ;i=i+1 ) {System.out.println("Vergleichszahl"+i);

           } 
    }
 	
   }
}
```

Also mit Sicherheit hab ich eine chaotische Struktur und es ist schwer für euch durchzublicken. Tut mir leid für das Durcheinander. Weiss auch nicht sicher, ob manche Zeilen überflüssig sind. Und vorallem vermute ich dass das Program nicht den Zweck erfüllt, nämlich, zu suchen und zu sortieren. Ausserdem meldet der Compiler ohnehin noch 7 Fehler. Sinn des Programms soll es sein, inerhalb von 2 Grenzen die Werte in aufsteigender Reihenfolge anzuordnen. Also ihr seht, dass ich wirklich noch ganz am Anfang stehe.

Grüsse


----------



## Stigma (26. Februar 2008)

*Erstens:* Das ist mit Abstand unleserlichste Code den ich in den letzten 25 Minuten zu Gesicht bekommen habe.

*Zweitens:* Der Code ist nicht vollständig.

*Drittens:* Nutze die Funktion [ CODE] [ /CODE]

*Viertens:* Versuche erst einmahl Applikationen zu schreiben, Sortierverfahren sind eigentlich eher für Programmierer mit Grundkenntnissen von ca einem Jahr.

*Fünftens:* Möchtest du das dir jemand hilft, dann setze Punkt Nummer drei um.

schönen Abend.


----------



## Rubens (26. Februar 2008)

Hi.

Ok. Ja, dachte mir dass man das schlecht nachvollziehen kann.
Dass es unvollständig ist dachte ich mir, mien compiler meldete auch 7 fehler
Für den 3. Punkt muss ich mich erst nochmal im Internet informieren was gemeint ist, aber danke für deinen Tipp.

Dachte eigentlich dass mein "Programm" eine Applikation wäre, da ich davon ausging, sie sei definiert durch public satic void main (String [] args). Also weiss ich nicht was ne Applikation ist. 
Ich werde Punkt 5 bzw. Punkt 3 auf jeden Fall beherzigen und bedanke mich.

grüsse


----------



## Stigma (26. Februar 2008)

Sehr geheerter Frau oder Herr Rubens,

ich hoffe das mein Beitrag Sie nicht gekränkt hat, denn dies war nicht meine Absicht. Punkt zwei sollte mann immer beachten. Um Ihr Problem zulösen benötigt man etwas mehr Code. Zu Punkt drei möchte ich sagen: da Sie sehr neu und unerfahren sind (damit meine ich die Programmierung und dieses Forum) gebe ich Ihnen einen Tipp. Erhoffen Sie sich Hilfe durch die anderen User dann müssen Sie, *müssen* vor und nach dem Quellcode einen Bestimmten befehl einfügen. Das Bild ist aussagefähiger als meine Worte.
Mit dem vierten Punkt meine ich folgendes. Sie sollten Programme schreiben, die die Grundelemente von Java beinhalten. Prinzipiell schreibt mann nicht alles in die void main! 
Eine Applikation sehe ich als abgeschlossenes Programm/Projekt das nicht unbedingt eine GUI benötigt aber zumindest umfangreich sein sollte. Was sie fabriziert haben nennt sich eine Methode. Diese Methode (auch wenn diese in der void main steht) kann von einer Applikation verwendet werden. Der fünfte Punkt ist ausschlaggebend über Ihren Erfolg bei tutorials.de. Die übrigen User lesen Ihren Beitrag nicht, nein die übrigen User überlesen ihn sogar, da Sie sich nicht an bestimmte Regeln halten(z.B. Punkt drei).

Stellen Sie Ihre Frage erneut und warten Sie ab ob sich jemand bereiterklärt Ihnen zu helfen. Auch ich möchte Ihnen Helfen werde es allerdings nicht vor Punkt drei tun.

Schönen Abend noch Stigma.


----------



## Rubens (26. Februar 2008)

Hi

Ich bleibe jetzt mal beim Du, da ich die Erfahrung gemacht habe, dass dies dei tutorials.de so üblich ist. Deshalb denke ich dass du damit einverstanden bist!!

Ich nehme dir auf keinen Fall irgendeinen Beitrag übel, da er mir schliesslich neue informationen bringt. Gleichwohl merke ich natürlich dass du angenervt bist von meier Unwissenheit gegenüber tutorials.de und Java.
Was ich bei tutorials.de gesucht habe, war eine information welchen Compiler ich benutzen muss und wo ich einen finde. 
Warum ich gerade auf tutorials.de gestossen bin, lag daran, dass die Beiträge mir einen sehr kompetenten Eindruck machten, so weit ich das beurteilen kann.
Nun, bei meinem Anliegen konntet ihr mir helfen. Danke dafür.
Warum ich mein ´"Programm" von dem ich sehrwohl weiss, dass es sehr schlecht geschrieben ist, hier rein gestellt hab, war, dass ich nette und ich denke ernstgemeinte Hilfsangebote bekam. Ich hatte ehrlich gesagt auch nicht erwartet dass jemand mir auf mein chaotisches Program antwort gibt. Deshalb bin ich froh, dass du dir die Zeit genommen hast.

Ich will mier auf keinen Fall meine Unwissenheit entschuldigen, da ich nun seit gerade mal   3 wochen mit java arbeite und das Meiste mir selbst erarbeitet habe.
Was ich sagen will ist, dass es verständlich ist, wenn ich mich mit Gewohn- und Verhaltensweisen bei tutorials.de und Java (noch) nicht auskenne.

Also, ich sage noch einmal das selbe was ich in meiner letzten Antwort geschrieben habe; Ich werde versuchen deine Punkte zu beachten, muss dazu aber wohl noch einiges mehr selbst erarbeiten, damit ich nicht tutorial.de-User mit dummen Frage löchere.

Ich danke wirklich ernst gemeint für eure Tipps undd Kritik, hoffe aber gleichzeitig auch, dass wir mit dem üblichen Du weitermachen.

Viele Grüsse


----------



## Klein0r (27. Februar 2008)

Also das hier ist zumindest der erste Beitrag den ich je gesehen habe wo jemand mit _Sehr geheerter Frau oder Herr xxxxxxxx_ angeredet wurde - das nur so am Rande!

Generell kannst du keine doofen Fragen stellen. Falls jemand von dem Thread genervt ist - bzw von der Art und Weise der Fragestellung, kann jeder den Zurück-Button seines Browsers nutzen und ist ja nich genötigt darauf zu antworten.

Nur: Es geht wesentlich schneller wenn du dir ein Anfängerbuch krallst und dich dort einliest. Du kannst es ja auch sehr Praktisch machen und nebenbei programmieren/ausprobieren. Das ganze macht es dann etwas einfacher für alle. So werden weniger einfache Fragen gestellt die die User hier zum 100sten beantworten müssten und du kommst schneller an Antworten. Generell würde ich immer Google dem Forum vorziehen und wenigstens ein Paar Minuten selber eine Lösung suchen bevor eine Frage gestellt wird - die Ergebnisse deiner Suche kannst du dann ja auch in deiner eventuellen Fragestellung mitgeben und so den Usern die Antwort erleichtern.

Mit dieser Punkt3-Geschichte ist das überhaupt kein Problem. Du sollst ledeglich deinen Code formatiert hier reinposten. Dazu schreibst du ganz einfach [CODE] ... <paste> ... [/CODE] oder benutzt den schon von Stigma aufgezeigten Button der dir genau dies beiden Tags erzeugt.

Also ich wünsch dir auf jeden Fall viel Spaß im Forum und hoffe das du uns erhalten bleibst  Ich bin auch eher selten hier zum posten - vielmehr zum Suchen nach Lösungen auf sämtliche Fragen. Denn hier wurde vieles schon beantwortet. Deswegen lohnt es sich auch die Suchfunktion zu bemühen bevor man selbst ein Thread eröffnet!

Da du noch nicht soviel Ahnung hast, würde ich dir wie schon gesagt erstmal empfehlen die Grundlagen der OOP zu erlernen und dann versuchen eine Verbindung zu Java herzustellen. Das ganze wird nicht in 1-2 Wochen klappen, aber es ist machbar!

lg


----------



## Rubens (28. Februar 2008)

Hi,

Ok, dann hab ich ja jetzt genug anhaltspunkte, wo ich meine Wissensgier stillen kann

Ich denke ich werd mich bald wieder melden, wenn auch das Proramieren ein wenig zurückstehen muss leider, Abi steht vor der Tür.

Machts gut


----------



## Rubens (1. März 2008)

Hi,
Hab mal ne Bitte
Und zwar, wärs super wenn ich mal den Aufabu einer einfachen Applikation sehen könnte.

Ich hab ja bisher nur mit public static void main (String[]args) also -so viel ich weiss mit Reihungen- und mathematischen Sortier-und Tauschverfahren gearbeitet. (Alle nach dem Muster in meinem schlechten "Programm" das ich hier reingestelllt hatte) Würde meinen Horizont denke ich stark erweitern, wenn ich mal den Aufbau einer Applikation sehen könnte oder auch gerne ein Applet, wobei ich da noch den Appletviewer bräuchte und ich dann wieder verwirrrt wäre. 

Shutdown, hat ja beispielsweise sein erstes Programm Tetris erwähnt - war zwar auf C++ und ziemlich schwer- aber so ein Programm und dessen Aufbau würde mich mal interessieren, auf Java, versteht sich.

Also wenn einer von euch so eine einfache Applikation/Applet hat wärs super wenn ich so was mal sehen könnte

Bedanke mich
Grüsse


----------

