LAB unter Windows Vista x86 Konsole - 73 Errors

Tigris
Gast

LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von Tigris » 2. Okt 2008 13:40

Hallo ihr Lieben, habe folgendes Problem (bin nicht der Einzige):
Ich habe entsprechend der Anleitung die Dateien für's LAB gezogen und alles eingerichtet.
Versuche ich allerdings, die Datei VorkursLAB.java das erste mal zu kompilieren, dann spuckt die Konsole mir 73 Fehler aus, die (so vermuten WIR) mit den import-Anweisungen zu tun haben.
Bei den Leuten, die mit Eclipse arbeiten, funktioniert alles einwandfrei.
Hier eine Kopie der Konsole:

_______________________________________________________________________________
c:\JAVA\LAB>javac -d bin -sourcepath src -classpath libs/jogl.jar:libs/gluegen-r
t.jar src/VorkursLAB.java
src\VorkursLAB.java:5: package javax.media.opengl does not exist
import javax.media.opengl.*;
^
src\VorkursLAB.java:9: package com.sun.opengl.util does not exist
import com.sun.opengl.util.Animator;
^
src\opengl\Graphic.java:9: package javax.media.opengl does not exist
import javax.media.opengl.*;
^
src\opengl\Graphic.java:10: package javax.media.opengl.glu does not exist
import javax.media.opengl.glu.*;
^
src\opengl\Graphic.java:16: package com.sun.opengl.util does not exist
import com.sun.opengl.util.*;
^
src\opengl\Graphic.java:18: cannot find symbol
symbol: class GLEventListener
public abstract class Graphic implements GLEventListener, MouseListener, MouseMo
tionListener, KeyListener {
^
src\opengl\Graphic.java:103: cannot find symbol
symbol : class GLAutoDrawable
location: class opengl.Graphic
private GLAutoDrawable drawable;
^
src\opengl\Graphic.java:104: cannot find symbol
symbol : class GL
location: class opengl.Graphic
private GL gl;
^
src\opengl\Graphic.java:105: cannot find symbol
symbol : class GLU
location: class opengl.Graphic
private GLU glu;
^
src\opengl\Graphic.java:106: cannot find symbol
symbol : class GLUT
location: class opengl.Graphic
private GLUT glut;
^
src\util\FPSCounter.java:7: package javax.media.opengl does not exist
import javax.media.opengl.*;
^
src\util\FPSCounter.java:8: package com.sun.opengl.util.j2d does not exist
import com.sun.opengl.util.j2d.*;
^
src\opengl\Graphic.java:207: cannot find symbol
symbol : class GLAutoDrawable
location: class opengl.Graphic
public void display(GLAutoDrawable arg0) {
^
src\opengl\Graphic.java:325: cannot find symbol
symbol : class GLAutoDrawable
location: class opengl.Graphic
public void init(GLAutoDrawable drawable) {
^
src\opengl\Graphic.java:383: cannot find symbol
symbol : class GLAutoDrawable
location: class opengl.Graphic
public void reshape(GLAutoDrawable arg0, int arg1, int arg2, int arg3, int arg
4) {
^
src\opengl\Graphic.java:413: cannot find symbol
symbol : class GLAutoDrawable
location: class opengl.Graphic
public void displayChanged(GLAutoDrawable arg0, boolean arg1, boolean arg2) {
^
src\util\FPSCounter.java:23: cannot find symbol
symbol : class GLDrawable
location: class util.FPSCounter
private GLDrawable drawable;
^
src\util\FPSCounter.java:24: cannot find symbol
symbol : class TextRenderer
location: class util.FPSCounter
private TextRenderer renderer;
^
src\util\FPSCounter.java:46: cannot find symbol
symbol : class GLDrawable
location: class util.FPSCounter
public FPSCounter(GLDrawable drawable, int textSize) throws GLException {
^
src\util\FPSCounter.java:46: cannot find symbol
symbol : class GLException
location: class util.FPSCounter
public FPSCounter(GLDrawable drawable, int textSize) throws GLException {
^
src\util\FPSCounter.java:62: cannot find symbol
symbol : class GLDrawable
location: class util.FPSCounter
public FPSCounter(GLDrawable drawable, Font font) throws GLException {
^
src\util\FPSCounter.java:62: cannot find symbol
symbol : class GLException
location: class util.FPSCounter
public FPSCounter(GLDrawable drawable, Font font) throws GLException {
^
src\util\FPSCounter.java:82: cannot find symbol
symbol : class GLDrawable
location: class util.FPSCounter
public FPSCounter(GLDrawable drawable, Font font, boolean antialiased, boolean
useFractionalMetrics)
^
src\util\FPSCounter.java:83: cannot find symbol
symbol : class GLException
location: class util.FPSCounter
throws GLException {
^
src\util\FPSCounter.java:128: cannot find symbol
symbol : class GLException
location: class util.FPSCounter
public void setColor(float r, float g, float b, float a) throws GLException {
^
src\VorkursLAB.java:31: cannot find symbol
symbol : class GLCapabilities
location: class VorkursLAB
GLCapabilities cap = new GLCapabilities();
^
src\VorkursLAB.java:31: cannot find symbol
symbol : class GLCapabilities
location: class VorkursLAB
GLCapabilities cap = new GLCapabilities();
^
src\VorkursLAB.java:32: cannot find symbol
symbol : class GLCanvas
location: class VorkursLAB
GLCanvas canvas = new GLCanvas(cap);
^
src\VorkursLAB.java:32: cannot find symbol
symbol : class GLCanvas
location: class VorkursLAB
GLCanvas canvas = new GLCanvas(cap);
^
src\VorkursLAB.java:38: cannot find symbol
symbol : class Animator
location: class VorkursLAB
final Animator animator = new Animator(canvas);
^
src\VorkursLAB.java:38: cannot find symbol
symbol : class Animator
location: class VorkursLAB
final Animator animator = new Animator(canvas);
^
src\opengl\Graphic.java:137: cannot find symbol
symbol : class GLUquadric
location: class opengl.Graphic
GLUquadric disk = glu.gluNewQuadric();
^
src\opengl\Graphic.java:138: cannot find symbol
symbol : variable GLU
location: class opengl.Graphic
glu.gluQuadricDrawStyle(disk, GLU.GLU_FILL);
^
src\opengl\Graphic.java:148: cannot find symbol
symbol : class GLUquadric
location: class opengl.Graphic
GLUquadric cyl = glu.gluNewQuadric();
^
src\opengl\Graphic.java:149: cannot find symbol
symbol : variable GLU
location: class opengl.Graphic
glu.gluQuadricDrawStyle(cyl, GLU.GLU_FILL);
^
src\opengl\Graphic.java:168: cannot find symbol
symbol : class GLUquadric
location: class opengl.Graphic
GLUquadric cyl = glu.gluNewQuadric();
^
src\opengl\Graphic.java:169: cannot find symbol
symbol : variable GLU
location: class opengl.Graphic
glu.gluQuadricDrawStyle(cyl, GLU.GLU_FILL);
^
src\opengl\Graphic.java:216: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
^
src\opengl\Graphic.java:216: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glClear(GL.GL_COLOR_BUFFER_BIT | GL.GL_DEPTH_BUFFER_BIT);
^
src\opengl\Graphic.java:218: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_FILL);
^
src\opengl\Graphic.java:218: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glPolygonMode(GL.GL_FRONT_AND_BACK, GL.GL_FILL);
^
src\opengl\Graphic.java:220: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glPolygonMode(GL.GL_FRONT, GL.GL_FILL);
^
src\opengl\Graphic.java:220: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glPolygonMode(GL.GL_FRONT, GL.GL_FILL);
^
src\opengl\Graphic.java:328: cannot find symbol
symbol : class GLU
location: class opengl.Graphic
glu = new GLU();
^
src\opengl\Graphic.java:329: cannot find symbol
symbol : class GLUT
location: class opengl.Graphic
glut = new GLUT();
^
src\opengl\Graphic.java:343: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glShadeModel(GL.GL_SMOOTH);
^
src\opengl\Graphic.java:346: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_LIGHTING);
^
src\opengl\Graphic.java:350: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_LIGHT0);
^
src\opengl\Graphic.java:353: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_LINE_SMOOTH);
^
src\opengl\Graphic.java:357: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_COLOR_MATERIAL);
^
src\opengl\Graphic.java:359: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE, DIFFUSE_MATERIAL, 0);

^
src\opengl\Graphic.java:359: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE, DIFFUSE_MATERIAL, 0);

^
src\opengl\Graphic.java:360: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SPECULAR, MAT_SPECULAR, 0);
^
src\opengl\Graphic.java:360: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SPECULAR, MAT_SPECULAR, 0);
^
src\opengl\Graphic.java:361: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SHININESS, MAT_SHININESS, 0);
^
src\opengl\Graphic.java:361: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMaterialfv(GL.GL_FRONT_AND_BACK, GL.GL_SHININESS, MAT_SHININESS, 0);
^
src\opengl\Graphic.java:362: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, LIGHT_POSITION, 0);
^
src\opengl\Graphic.java:362: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glLightfv(GL.GL_LIGHT0, GL.GL_POSITION, LIGHT_POSITION, 0);
^
src\opengl\Graphic.java:364: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glColorMaterial(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE);
^
src\opengl\Graphic.java:364: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glColorMaterial(GL.GL_FRONT_AND_BACK, GL.GL_DIFFUSE);
^
src\opengl\Graphic.java:366: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_LINE_SMOOTH);
^
src\opengl\Graphic.java:367: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_POLYGON_SMOOTH);
^
src\opengl\Graphic.java:369: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_BLEND);
^
src\opengl\Graphic.java:370: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
^
src\opengl\Graphic.java:370: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glBlendFunc(GL.GL_SRC_ALPHA, GL.GL_ONE_MINUS_SRC_ALPHA);
^
src\opengl\Graphic.java:371: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
^
src\opengl\Graphic.java:371: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glHint(GL.GL_LINE_SMOOTH_HINT, GL.GL_NICEST);
^
src\opengl\Graphic.java:374: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_NORMALIZE);
^
src\opengl\Graphic.java:377: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glEnable(GL.GL_DEPTH_TEST);
^
src\opengl\Graphic.java:380: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glDepthFunc(GL.GL_LEQUAL);
^
src\opengl\Graphic.java:388: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMatrixMode(GL.GL_PROJECTION);
^
src\opengl\Graphic.java:408: cannot find symbol
symbol : variable GL
location: class opengl.Graphic
gl.glMatrixMode(GL.GL_MODELVIEW);
^
src\util\FPSCounter.java:85: cannot find symbol
symbol : class TextRenderer
location: class util.FPSCounter
renderer = new TextRenderer(font, antialiased, useFractionalMetrics);
^
73 errors

c:\JAVA\LAB>
_______________________________________________________________________________-

Liebe Grüße, Christian

Benutzeravatar
Wolle
Ehemalige Fachschaftler
Beiträge: 127
Registriert: 8. Jan 2005 13:23
Wohnort: Darmstadt
Kontaktdaten:

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von Wolle » 2. Okt 2008 14:11

^^

Ja, in der Aufgabenstellung steht nur die Linux Zeile zum starten.
Es steht zwar "eigener Rechner", aber das kann ja auch ein Linux sein.

Für Windows:

javac -d bin -sourcepath src -classpath libs/jogl.jar;libs/gluegen-rt.jar src/VorkursLAB.java
zum starten:
java -Djava.library.path=libs -classpath bin;libs/gluegen-rt.jar;libs/jogl.jar VorkursLAB

der Unterschied besteht darin, dass bei Linux mit einem " : " getrennt werden muß und bei Windows mit einem " ; "
Always remember that you are unique. Just like everyone else.

robert.n
Nerd
Nerd
Beiträge: 673
Registriert: 29. Sep 2008 19:17

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von robert.n » 2. Okt 2008 19:33

Booooooooooooooooooahh *sooo einen Hals hat* :evil:

Java plattformunabhängig - schön und gut. Aber warum kann man denn diesen kleinen Unterschied zwischen Windows/nicht-Windows nicht auch noch eliminieren? :idea:

Naja, jetzt gehts ja endlich und das wahre 3dimensionale Snake (SnakeCube) kann weiterentwickelt werden... wird dann im Laufe des Wochenendes hier veröffentlicht, denke ich mal.

Benutzeravatar
Wolle
Ehemalige Fachschaftler
Beiträge: 127
Registriert: 8. Jan 2005 13:23
Wohnort: Darmstadt
Kontaktdaten:

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von Wolle » 2. Okt 2008 23:47

Dieser Unterschied hat NICHTS mit Java zu tun.
Unter Windows definiert man globale Systemvariablen mit

NAME = PFAD_ZUM_ERSTEN_ORDNER;PFAD_ZUM_ZWEITEN_ORDNER;PFAD....

unter Linux eben

NAME = PFAD_ZUM_ERSTEN_ORDNER:PFAD_ZUM_ZWEITEN_ORDNER:PFAD....

Und dieser Teil der Java Befehle benötigt nunmal das Betriebssystem... kann Java nix für ^^
Always remember that you are unique. Just like everyone else.

robert.n
Nerd
Nerd
Beiträge: 673
Registriert: 29. Sep 2008 19:17

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von robert.n » 3. Okt 2008 10:06

Doch, da kann Java schon was für. Natürlich nicht für den Unterschied zwischen Linux/Windows, der mir durchaus bekannt ist, aber dafür, dass es nicht : und ; akzeptiert und dann je nach Betriebssystem automatisch anpasst. Diese Umwandlung wäre auch gar nicht mal besonders schwer.

Und wem dieser Vorschlag nicht gefällt, wie wäre es mit einer Warnung des Compilers, wenn man ":" unter Windows bzw. ";" unter Linux in seinen Pfadangaben verwendet: "Warning: paths are separated with ; on windows and : on other operating systems" o.ä..

Dritter Vorschlag wäre, dass Java einfach ein eigenes Trennzeichen definiert (ich dachte, das wäre so), eben z.B. den ":". Und dann ebenfalls an das jeweilige System anpasst. Das soll doch die Aufgabe von Java sein: Unterschiede zwischen den Betriebssystemen durch eine Zwischenschicht (Java selbst) ausmerzen. (Für die ISTler: Natürlich werden nicht die Unterschiede selbst ausgemerzt, Java sorgt nur dafür dass man sich als Programmierer nicht mehr darum kümmern braucht (Für die Juristen: Natürlich betrifft das nicht Dateioperationen o.ä., wo es auf korrekte Pfadangaben ankommt (Für die Physiker: Natürlich könnte man auch diese Unterschiede noch durch eine Zwischenschicht eliminieren, aber das interessiert gerade nicht also haltet die Klappe und schämt euch für den LHC-Crash.^^))).

Vielleicht gibt es irgendeinen intelligenten Grund dafür, dass Java das nicht so macht... den kenne ich aber (noch) nicht. Vielleicht haben Programmierer einfach keinen Komfort verdient. :lol: Kann auch sein, dass ich zu sehr Perfektionist bin...

SmilingJ
Sonntagsinformatiker
Sonntagsinformatiker
Beiträge: 292
Registriert: 5. Okt 2004 21:37
Kontaktdaten:

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von SmilingJ » 3. Okt 2008 10:31

Nur so ... natürlich ist es gut, wenn man auch mal Java von der Kommandozeile starten/compilieren kann (Ich muss das sagen, sonst hab ich Angst vor Darth Wach), ABER:

Eine IDE zu benutzen hat ein Haufen Vorteile, die ihr selbst sehr schnell zu schätzen lernt (dabei ist es egal welche Eclipse/Netbeand/VS ...) also richtet euch doch die IDE eurer Wahl ein und bleibt dabei. Das erspart ein Haufen Ärger.

Noch ein Wort zur IDE Wahl: an der TUD wird (meiner Erfahrung nach) eigentlich nur mit Eclipse gearbeitet. Anderes ist auch möglich, verkompliziert das ein oder andere jedoch.
Drei Menschen können ein Geheimnis bewahren, wenn zwei von ihnen tot sind. - Benjamin Franklin

Christoph-D
Computerversteher
Computerversteher
Beiträge: 325
Registriert: 11. Dez 2005 13:14
Wohnort: Darmstadt

Re: LAB unter Windows Vista x86 Konsole - 73 Errors

Beitrag von Christoph-D » 3. Okt 2008 13:40

robert.n hat geschrieben:Vielleicht gibt es irgendeinen intelligenten Grund dafür, dass Java das nicht so macht... den kenne ich aber (noch) nicht.
Es gibt mindestens zwei gute Gründe, die mir spontan einfallen:
1. Java holt den CLASSPATH auch einer Umgebungsvariablen und nicht nur von der Kommandozeile. Bei Umgebungsvariablen muss man sich halt an den Standard des jeweiligen Betriebssystems halten, und bei Windows heißt das "Semikolon als Pfadtrenner".
2. Der : hat bei Windows-Pfaden im Gegensatz zu Linux-Pfaden eine besondere Bedeutung. Bei einem classpath wie "C:\foo" ist nicht mehr eindeutig feststellbar, ob das die beiden Ordner "C" und "\foo" (vom aktuellen Verzeichnis aus gesehen) enthält oder den absoluten Pfad "C:\foo".

Jetzt sag bitte nicht, ich darf einen Ordner dann eben nicht einbuchstabig benennen. ;)
"I believe in the fundamental interconnectedness of all things." (Dirk Gently)

Antworten

Zurück zu „Archiv“