2012-07-20 66 views
0

可能重复:
problems with java3D lib configurationJAVA3D-首先程序 - 错误

我要让使用Java 3D游戏Ubuntu的,所以我下载j3d-1_5_2-linux-i586.ziphttp://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-java-client-419417.html#java3d-1.5.1-oth-JPR,提取它。在Eclipse中,我加了3瓶在Eclipse ../j3d-1_5_2-linux-i586/lib/ext/,然后写了这个代码

import com.sun.j3d.utils.universe.SimpleUniverse; 
import com.sun.j3d.utils.geometry.ColorCube; 
import javax.media.j3d.BranchGroup; 

public class Hello3d { 
    public Hello3d() { 
     SimpleUniverse universe = new SimpleUniverse(); 
     BranchGroup group = new BranchGroup(); 
     group.addChild(new ColorCube(0.3)); 
     universe.getViewingPlatform().setNominalViewingTransform(); 
     universe.addBranchGraph(group); 
    } 

    public static void main(String[] args) { 
     new Hello3d(); 
    } 

} 

了这些错误

Description Resource Path Location Type 
Access restriction: The constructor SimpleUniverse() is not accessible due to restriction on required library /home/emil/Downloads/j3d-1_5_2-linux-i586/lib/ext/j3dutils.jar Hello3d.java /Checker3D/src line 7 Java Problem 

    Description Resource Path Location Type 
Access restriction: The constructor BranchGroup() is not accessible due to restriction on required library /home/emil/Downloads/j3d-1_5_2-linux-i586/lib/ext/j3dcore.jar Hello3d.java /Checker3D/src line 8 Java Problem 

Description Resource Path Location Type 
Access restriction: The constructor ColorCube(double) is not accessible due to restriction on required library /home/emil/Downloads/j3d-1_5_2-linux-i586/lib/ext/j3dutils.jar Hello3d.java /Checker3D/src line 9 Java Problem 

,更喜欢那些 我设置了“Forbidden reference (access rules) “从”**Error**“到”**Warning**“的”Deprecated and restricted API“下。

建设运行--->运行配置---> Java应用程序--->(X =)参数---> VM argiments

Exception in thread "main" java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path 
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1681) 
    at java.lang.Runtime.loadLibrary0(Runtime.java:840) 
    at java.lang.System.loadLibrary(System.java:1047) 
    at javax.media.j3d.NativePipeline$1.run(NativePipeline.java:231) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at javax.media.j3d.NativePipeline.loadLibrary(NativePipeline.java:200) 
    at javax.media.j3d.NativePipeline.loadLibraries(NativePipeline.java:157) 
    at javax.media.j3d.MasterControl.loadLibraries(MasterControl.java:987) 
    at javax.media.j3d.VirtualUniverse.<clinit>(VirtualUniverse.java:299) 
    at Hello3d.<init>(Hello3d.java:7) 
    at Hello3d.main(Hello3d.java:15) 

,我加

-Djava.library.path=$LD_LIBRARY_PATH:/home/emil/Downloads/j3d-1_5_2-linux-i586/lib/i386/ 

我得到的错误

Exception in thread "main" java.lang.NoClassDefFoundError: Checker 
Caused by: java.lang.ClassNotFoundException: Checker 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266) 
Could not find the main class: Checker. Program will exit. 

回答

0

这是您的答案欢呼声!用户库1.新建:J3DAll,2.添加JAR ..在.. \ jre6 \ lib \ ext \ j3dcore.jar中选择所有三个,j3dutils。 jar,vecmath.jar

项目 - >属性 - > Java Build Path - >库添加库 - >用户库 - >下一步选择J3DAll Finish Project - > Properties - > Java Build Path - > Order and Export顶部J3DAll