Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aparabi,java.lang.UnsatisfiedLinkError:libaparapi_x86_。。。can';找不到依赖库_Java_Gpu_Unsatisfiedlinkerror_Aparapi_Java Native Library - Fatal编程技术网

Aparabi,java.lang.UnsatisfiedLinkError:libaparapi_x86_。。。can';找不到依赖库

Aparabi,java.lang.UnsatisfiedLinkError:libaparapi_x86_。。。can';找不到依赖库,java,gpu,unsatisfiedlinkerror,aparapi,java-native-library,Java,Gpu,Unsatisfiedlinkerror,Aparapi,Java Native Library,我试着在4台计算机上运行我的aparapi java程序。2台计算机可以完美运行,但其他2台计算机抛出java.lang.UnsatifiedLinkError: ` 线程“GPU”java.lang.UnsatifiedLinkError中出现异常:C:\Users\Wrusol\AppData\Local\Temp\libaparapi\u x86\u 641952980562458381879.dll:找不到相关库 位于java.lang.ClassLoader$NativeLibrary

我试着在4台计算机上运行我的aparapi java程序。2台计算机可以完美运行,但其他2台计算机抛出
java.lang.UnsatifiedLinkError

`

线程“GPU”java.lang.UnsatifiedLinkError中出现异常:C:\Users\Wrusol\AppData\Local\Temp\libaparapi\u x86\u 641952980562458381879.dll:找不到相关库
位于java.lang.ClassLoader$NativeLibrary.load(本机方法)
位于java.lang.ClassLoader.loadLibrary0(未知源)
位于java.lang.ClassLoader.loadLibrary(未知源)
位于java.lang.Runtime.load0(未知源)
位于java.lang.System.load(未知源)
位于com.aparapi.natives.util.NativeUtils.loadLibraryFromJar(NativeUtils.java:100)
位于com.aparapi.natives.NativeLoader.load(NativeLoader.java:42)
位于com.aparapi.internal.opencl.OpenCLLoader.(OpenCLLoader.java:43)
在com.aparapi.internal.opencl.OpenCLPlatform.getOpenCLPlatforms(OpenCLPlatform.java:73)
位于com.aparapi.device.OpenCLDevice.listDevices(OpenCLDevice.java:458)
位于com.aparapi.internal.kernel.KernelManager.createDefaultPreferredDevices(KernelManager.java:203)
位于com.aparapi.internal.kernel.KernelManager.createDefaultPreferences(KernelManager.java:178)
位于com.aparapi.internal.kernel.KernelManager(KernelManager.java:46)
位于com.aparapi.internal.kernel.KernelManager.(KernelManager.java:38)
位于com.aparapi.internal.kernel.KernelRunner.(KernelRunner.java:170)
位于com.aparapi.Kernel.prepareKernelRunner(Kernel.java:2270)
位于com.aparapi.Kernel.execute(Kernel.java:2439)
位于com.aparapi.Kernel.execute(Kernel.java:2396)
位于com.aparapi.Kernel.execute(Kernel.java:2336)
在com.mycompany.insurancecompanywhithgpu.SimulationCounter.GPUSimulation(SimulationCounter.java:387)上
在com.mycompany.insurancecompanywithgpu.SimulationCounter$2.run(SimulationCounter.java:357)上
位于java.lang.Thread.run(未知源)
`

您需要添加必要的本机库 对于windows,这意味着.dll文件。在与jar文件处于同一级别的文件夹中找到不同的arch type.dll

通过命令行启动jar文件时,添加以下语句:

java "-Djava.library.path=lib" -jar your.jar
其中
lib
是包含本机.dll的文件夹。
对于其他操作系统,Aparabi站点上也提供了本机库。如果需要,也可以将这些文件放入
lib
文件夹中。

注意:我是Aparabi项目的当前负责人。这是Aparabi早期版本中存在的一个错误。如果按此处所述使用1.5.0版,则可以:

如果在maven central中使用Aparabi版本,则无需安装任何东西。假设您已经安装了OpenCL的任何实现,那么需要安装的所有东西都已安装。Aparabi通过maven甚至是平台的dll/so文件拉入依赖项,并自动加载

您也可以在自述文件中找到类似的信息:


这里首先提到了您遇到的bug,并列出了修复该bug的修补程序/版本(如果您需要这些信息):

如果安装/使用了正确的arch类型软件,您可能会遇到不满意的链接错误。我在基于NVIDIA的系统上也遇到了此问题。我已经在各种基于英特尔和AMD的系统上进行了测试,结果都很好。据我所知,我有正确的驱动程序,我在64位机器上使用64位java等等。我的lib文件夹中有aparapi-1.3.4.jar和aparapi-jni-1.1.2.jar。我正在使用Syncleus/Aparapi,我早在AMD启动Aparapi时就意识到了这一点,我认为这是一种非常有前途的方法。我甚至在Groovy中尝试过类似的东西,它已经内置了AST基础设施——见鬼,那已经是6年前的事了。不过:很高兴看到Aparabi现在还在继续。@Marco13谢谢,是的,Aparabi似乎正在不断发展壮大,自从我接手这个项目(大约2年)以来,我们已经发布了十几个版本,我们刚刚发布了1.6,即将发布1.7。
java "-Djava.library.path=lib" -jar your.jar