我是一个新的JCuda用户,我开始在我的节点中尝试一些示例。我正在运行一个简单的:
import jcuda.*;
import jcuda.runtime.*;
public class JCudaRuntimeTest{
public static void main(String args[]){
Pointer pointer = new Pointer();
JCuda.cudaMalloc(pointer, 4);
System.out.println("Pointer: "+pointer);
JCuda.cudaFree(pointer);
}
}我将每个库放在相同的文件夹中,可以很容易地编译代码,但是当我运行java JCudaRuntimeTest时,我得到了这个异常。
Exception in thread "main" java.lang.NoClassDefFoundError: jcuda/Pointer
at JCudaRuntimeTest.main(JCudaRuntimeTest.java:7)
Caused by: java.lang.ClassNotFoundException: jcuda.Pointer
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
... 1 more有什么建议吗?
发布于 2011-04-15 17:06:28
NoClassDefFoundError几乎总是意味着您的类路径中缺少某些内容。
在运行程序时,请确保jcuda-<version>.jar文件(以及可能需要的其他JAR文件)位于类路径中。
可以在使用-cp开关运行程序时指定类路径,例如:
java -cp C:\Project\jcuda\jcuda-0.3.2a.jar;C:\Project\mystuff\classes org.mystuff.MyProgram或通过设置CLASSPATH环境变量(不推荐)。
https://stackoverflow.com/questions/5670836
复制相似问题