原来可以的java3D小程序,现在怎么不可以了啊?急啊,在线等待!
各位高手,你们好,小弟我这里有个问题,让我烦恼多日了,下面贴出来,请指教:
我用java3D做东西,一开始在JBuilder9里面运行的很好,只是有个小小的警告,如下面这里例子:
package j3d;
import java.applet.Applet;
import java.awt.BorderLayout;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.geometry.Cone;
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import javax.vecmath.*;
public class SimpleCone
extends Applet {
public BranchGroup createSceneGraph() {
BranchGroup objRoot = new BranchGroup();
TransformGroup objTrans = new TransformGroup();
objRoot.addChild(objTrans);
Appearance app = new Appearance();
Material material = new Material();
material.setEmissiveColor(new Color3f(1.0f, 0.0f, 0.0f));
app.setMaterial(material);
Cone cone = new Cone(0.5f, 1.0f, 1, app);
objTrans.addChild(cone);
objRoot.compile();
return objRoot;
}
public SimpleCone() {
setLayout(new BorderLayout());
Canvas3D c = new Canvas3D(null);
add("Center", c);
BranchGroup scene = createSceneGraph();
SimpleUniverse u = new SimpleUniverse(c);
u.getViewingPlatform().setNominalViewingTransform();
u.addBranchGraph(scene);
}
public static void main(String[] args) {
new MainFrame(new SimpleCone(), 256, 256);
}
}
运行时出现下面这个:
*************************************************************************
***ERROR:Canvas3D constructed with a null GraphicsConfiguration
***This will cause a NullPointerException in a subsequent release
*************************************************************************
可是不影响运行,但是一次我卸了JRE又重装以后,就出现了下面的问题:(下面是Jbuilder9给出的信息)
D:\JBuilder9\j2sdk1.4.2\bin\javaw -classpath "D:\Work\JbuilderPro\j3d\classes;D:\JBuilder9\jdk1.4\add_3DopenGL\jre\lib\ext\j3daudio.jar;D:\JBuilder9\jdk1.4\add_3DopenGL\jre\lib\ext\j3dcore.jar;D:\JBuilder9\jdk1.4\add_3DopenGL\jre\lib\ext\j3dutils.jar;D:\JBuilder9\jdk1.4\add_3DopenGL\jre\lib\ext\vecmath.jar;D:\JBuilder9\j2sdk1.4.2\jre\javaws\javaws.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\ext\dnsns.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\ext\ldapsec.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\ext\sunjce_provider.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\ext\localedata.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\im\indicim.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\im\thaiim.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\jce.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\sunrsasign.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\charsets.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\plugin.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\jsse.jar;D:\JBuilder9\j2sdk1.4.2\jre\lib\rt.jar;D:\JBuilder9\j2sdk1.4.2\lib\dt.jar;D:\JBuilder9\j2sdk1.4.2\lib\htmlconverter.jar;D:\JBuilder9\j2sdk1.4.2\lib\tools.jar;D:\JBuilder9\j2sdk1.4.2\demo\jfc\Java2D\Java2Demo.jar;D:\JBuilder9\j2sdk1.4.2\demo\plugin\jfc\Java2D\Java2Demo.jar" j3d.SimpleCone
java.lang.UnsatisfiedLinkError: no J3D in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1491) at java.lang.Runtime.loadLibrary0(Runtime.java:788) at java.lang.System.loadLibrary(System.java:834) at javax.media.j3d.MasterControl$22.run(MasterControl.java:889) at java.security.AccessController.doPrivileged(Native Method) at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:886) at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:229) at javax.media.j3d.Canvas3D.<clinit>(Canvas3D.java:3533) at j3d.SimpleCone.<init>(SimpleCone.java:33) at j3d.SimpleCone.main(SimpleCone.java:43)Exception in thread "main"
我实在是没有办法了,我曾试着在Dos窗口用上面的命令编译运行,和原来一样可以,只是给出警告,而不是现在的根本不能运行,小弟这里先谢谢了!