# Import Java3D in der Eingabeaufforderung



## Developer_X (24. Feb 2009)

Hi, also um Java nutzten zu können, also
um eine selbstgeschriebene Datei zu starten,
muss ich bei der Eingabeaufforderung
ja dieses "set PATH..."
machen,
wie ich das genauer mache seht ihr unten im Anhang.
Also, ich habe für Java3D Programme, also selbstgeschrieben, immer Eclipse benutzt, wenn ich aber nun ein J3D-Programm starten will, ohne Eclipse, dann steht da bei der compilierung, cannot find symbol soundso
natürlich, weil er die Java3D FIles an meinem Rechner net findet, könnte mir einer von euch vielleicht helfen, und sagen, wo ich Java3D richtig positionieren soll, usw...
danke schon mal im Voraus Developer_X

-----------------Anhang--------------------
-Ich habe eine Datei "HelloWorld.java" auf der Festplatte "F" gespeichert:
--ich habe das "JDK1.6.0_11" in dem Ordner Java, in dem Ordner Programme auf der Festplatte C
F:
set PATH = C:\Programme\Java\jdk1.6.0_11\bin; %PATH%
javac HelloWorld.java
java HelloWorld
--------------------------------------------
Wie ihr sehen könnt, geht das ja alles, aber wie kann ich gleichzeitig den Path auf das jdk richten, für "javac" 
und dabei noch die Verpfadung zu Java3d erstellen?

Danke schon mal im Voraus Developer_X


----------



## Spacerat (24. Feb 2009)

Ach so ist das... Du bist'n Hardcoder. Wieso verwendest du nicht einfach 'ne IDE (z.B. Eclipse)?
Was solls... Unter Windows:
-Arbeitsplatz->Eigenschaften->Erweitert->Umgebungsvariablen
-Für alle Benutzer unteren Abschnitt, für aktuellen Benutzer oberen Abschnitt editieren.

Unter Linux: (uhhh lang nicht mehr dort gewesen...)
Ich glaub da musste man in "/etc/init.d/boot" den Pfad mit export setzen.


----------



## mvitz (24. Feb 2009)

javac -cp \PFAD\ZU\JAVA3D.jar HelloWorld.java


----------



## Developer_X (24. Feb 2009)

das was habi55 gesagt hat hab ich gesucht danke


----------



## Developer_X (24. Feb 2009)

So ich hab das mal umgeändert, funktioniert aber nicht, erstens ich hab nicht 1 jar datei, sondern 3
für Java3D
ich hab das folgende als Batch Datei geschriben, also das selbe wie der TExt, den man in die Eingabeaufforderung gibt:

```
@echo

F:
set PATH=C:\Programme\Java\jdk1.6.0_11\bin; %PATH%
javac -cp C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dcore.jar C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dutils.jar C:\Programme\Java\Java3D\1.5.0\lib\ext\vecmath.jar  
javac Human1.java  
java Human1 

pause
```

Bei mir ist die Klasse Human1 auf der Festplatte "F"


----------



## mvitz (24. Feb 2009)

den Classpath mit ; trennen

```
@echo

F:
set PATH=C:\Programme\Java\jdk1.6.0_11\bin; %PATH%
javac -cp C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dcore.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dutils.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\vecmath.jar  
javac Human1.java  
java Human1 

pause
```


----------



## Developer_X (24. Feb 2009)

da kommen aber immer wieder fehler meldungen, cannot find symbol
denkst du in der java klasse is es nötig die imports von java3D zu entfernen?
´Damit das programm funktionieren kann?


----------



## Developer_X (24. Feb 2009)

wenn ich das programm ohne die Java Klasse starte, dann
kommt folgende MEldung:

```
javac: no soruce files
Usage: javac <options> <source files>
use -help for a list of possible options
```


----------



## mvitz (24. Feb 2009)

```
@echo

F:
set PATH=C:\Programme\Java\jdk1.6.0_11\bin; %PATH%
javac -cp C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dcore.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dutils.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\vecmath.jar Human1.java  
java -cp C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dcore.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dutils.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\vecmath.jar Human1 

pause
```

versuch das mal


----------



## Spacerat (24. Feb 2009)

Dann eben gaaaanz anders. Wäre es ein Problem, die Java3D Jars in den CP der neuen VM zu kopieren?


----------



## Developer_X (24. Feb 2009)

So, danke habi55
nun kommt nicht mehr die Meldung mit den Symbols, dafür etwas anderes,
ich glaube er findet die Ressourcen von Java3D aber er kommt nicht mehr auf die Main Class, ich hab mal ne ganz einfache Java3D Klasse Geschrieben, aus meinen Anfänger Zeiten in 3D:

```
import javax.media.j3d.BoundingSphere;
import javax.media.j3d.BranchGroup;
import javax.media.j3d.DirectionalLight;
import javax.vecmath.*;

import com.sun.j3d.utils.geometry.Cylinder;
import com.sun.j3d.utils.geometry.Sphere;
import com.sun.j3d.utils.universe.SimpleUniverse;

public class Dimension3_2 
{
	public Dimension3_2 () 
	{
		SimpleUniverse universe = new SimpleUniverse();
		
		BranchGroup group = new BranchGroup();
		
		 Sphere sphere = new Sphere(0.2f,80,80);
		 
		  
		 group.addChild(sphere);
		 
		 Color3f light1Color = new Color3f(1.9f, 0.13f, 160000.6f);

		   BoundingSphere bounds = 

		   new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);

		   Vector3f light1Direction = new Vector3f(1.0f, -7.0f, -12.0f);

		   DirectionalLight light2

		      = new DirectionalLight(light1Color, light1Direction);

		   light2.setInfluencingBounds(bounds);

		   group.addChild(light2);

		   // look towards the ball

		   universe.getViewingPlatform().setNominalViewingTransform();

		   // add the group of objects to the Universe

		   universe.addBranchGraph(group);
	}			
		public static void main(String[] args)
		{ new Dimension3_2();}		
}
```

Aber nun kommt eine neue Fehler meldung,
um das ganze nicht abzutippen, ich hab es als bild hier gespeichert:
https://java-rayman.dev.java.net/files/documents/9616/127742/error.JPG
Bisschen verschmiert aber man sollte noch das wichtigste erkennen könne,
es geht darum, dass er nicht die main findet, oder die "main-class"
PS:ich hab genau das was du mir geraten hast als batch zu schreiben probiert, ich glaube man muss auch die jars erst javacen und dann javaen,
was mach ich falsch?
@Edit: Ah ist doch scharf, du musst nur einmal zoomen, indem du auf den screenshot klickst


----------



## mvitz (24. Feb 2009)

Meine Vermutung wäre

```
java -cp C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dcore.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\j3dutils.jar;C:\Programme\Java\Java3D\1.5.0\lib\ext\vecmath.jar;. Dimension3_2
```
Somit nimmst du das aktuelle Verzeichnis auch noch mti in den Classpath auf


----------



## Developer_X (24. Feb 2009)

oh danke, jetzt funktioniert es!!!
Danke !!!


----------

