DL4J未满足链接错误:java.library.path中没有jniopenblas

DL4J未满足链接错误:java.library.path中没有jniopenblas,java,unsatisfiedlinkerror,openblas,dl4j,Java,Unsatisfiedlinkerror,Openblas,Dl4j,我试图通过gradle建立一个deeplearning4j项目,但我得到了一个不满意的链接错误: Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopenblas in java.library.path at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867) at java.lang.Runtime.loadLibrary0(Runt

我试图通过gradle建立一个deeplearning4j项目,但我得到了一个不满意的链接错误:

Exception in thread "main" java.lang.UnsatisfiedLinkError: no jniopenblas in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:976)
    at org.bytedeco.javacpp.Loader.load(Loader.java:777)
    at org.bytedeco.javacpp.Loader.load(Loader.java:684)
    at org.bytedeco.javacpp.openblas.<clinit>(openblas.java:10)
    at org.nd4j.linalg.cpu.nativecpu.blas.CpuBlas.setMaxThreads(CpuBlas.java:117)
    at org.nd4j.nativeblas.Nd4jBlas.<init>(Nd4jBlas.java:35)
    at org.nd4j.linalg.cpu.nativecpu.blas.CpuBlas.<init>(CpuBlas.java:12)
    at org.nd4j.linalg.cpu.nativecpu.CpuNDArrayFactory.createBlas(CpuNDArrayFactory.java:89)
    at org.nd4j.linalg.factory.BaseNDArrayFactory.blas(BaseNDArrayFactory.java:67)
    at org.nd4j.linalg.cpu.nativecpu.ops.NativeOpExecutioner.getEnvironmentInformation(NativeOpExecutioner.java:1176)
    at org.nd4j.linalg.api.ops.executioner.DefaultOpExecutioner.printEnvironmentInformation(DefaultOpExecutioner.java:562)
    at org.nd4j.linalg.factory.Nd4j.initWithBackend(Nd4j.java:6210)
    at org.nd4j.linalg.factory.Nd4j.initContext(Nd4j.java:6087)
    at org.nd4j.linalg.factory.Nd4j.<clinit>(Nd4j.java:201)
    at org.deeplearning4j.nn.conf.NeuralNetConfiguration$Builder.seed(NeuralNetConfiguration.java:777)
    at my.project.NeuralNetwork.main(NeuralNetwork.java:43)
Caused by: java.lang.UnsatisfiedLinkError: no openblas in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1867)
    at java.lang.Runtime.loadLibrary0(Runtime.java:870)
    at java.lang.System.loadLibrary(System.java:1122)
    at org.bytedeco.javacpp.Loader.loadLibrary(Loader.java:976)
    at org.bytedeco.javacpp.Loader.load(Loader.java:765)
    ... 14 more
我也试着补充一下

compile group: 'org.bytedeco.javacpp-presets', name: 'openblas', version: '0.2.20-1.3'
但那没用


我需要安装OpenBlas吗?我没有在报纸上读到这样的东西。操作系统是Win10,IDE是IntelliJ社区版。

nd4j jblas甚至不是有效的maven依赖项。你到底从哪里弄来的

我们的文档中没有ND4JJBLAS,它已经存在了近2年了。坚持我们的入门文档:

我们会解释你需要什么。与其与所有分类器混淆,不如使用:
工件id的nd4j本机平台。

我将这些依赖项添加到POM.xml文件中,它正在工作

<dependency>
    <groupId>org.bytedeco.javacpp-presets</groupId>
    <artifactId>openblas</artifactId>
    <version>0.2.20-1.4</version>
</dependency>

<dependency>
    <groupId>org.bytedeco.javacpp-presets</groupId>
    <artifactId>openblas-platform</artifactId>
    <version>0.2.20-1.4</version>
</dependency>

org.bytedeco.javacpp-presets
openblas
0.2.20-1.4
org.bytedeco.javacpp-presets
openblas平台
0.2.20-1.4

我遇到了同样的问题,并通过向环境变量path添加以下路径来解决它:“D:\Users\username\.javacpp\cache\bin”

用户名和D:\将特定于您的计算机,例如我的用户名是Arslan Akhtar,因此我的路径是D:\Users\Arslan Akhtar.javacpp\cache\bin

在您的计算机上,转到编辑系统环境变量=>然后在系统变量下找到变量路径并选择编辑=>然后在添加分号(;)作为分隔符后,在长字符串的末尾追加上述变量路径

如果您在windows计算机上使用64位java,则必须添加以下内容作为VM参数(IntelliJ中的运行->编辑配置->VM选项):

-Djava.library.path=“

谢谢,{compile”org.deeplearning4j:deeplearning4j核心:0.9.1“compile”org.nd4j:nd4j本机平台:0.9.1“}足以运行它。
<dependency>
    <groupId>org.bytedeco.javacpp-presets</groupId>
    <artifactId>openblas</artifactId>
    <version>0.2.20-1.4</version>
</dependency>

<dependency>
    <groupId>org.bytedeco.javacpp-presets</groupId>
    <artifactId>openblas-platform</artifactId>
    <version>0.2.20-1.4</version>
</dependency>