SLF4J: Не удалось загрузить класс "org.slf4j.impl.StaticLoggerBinder" Путь был установлен - PullRequest
1 голос
/ 13 апреля 2019

Я пытаюсь запустить приведенный ниже простой код из [https://neanderthal.uncomplicate.org/articles/getting_started.html#overview-and-features]

Я уже обновил свой PATH, как указано в [https://www.slf4j.org/codes.html#StaticLoggerBinder]

Математические библиотеки ядра 2018 уже установлены.

файл project.clj

 (defproject math "0.0.1-SNAPSHOT"
 :description "FIXME: write description"
  :dependencies [[org.clojure/clojure "1.10.0"]
             [uncomplicate/neanderthal "0.22.1"]
             [info.sunng/ring-jetty9-adapter "0.12.2"]]  
   :plugins [[lein-with-env-vars "0.1.0"]]
  :env-vars {:DYLD_LIBRARY_PATH "/opt/intel/mkl/lib:/opt/intel/lib"}

 :aot [math.core]
 :main math.core)

файл core.clj

(ns math.core
(:use [uncomplicate.neanderthal core native]))



(def x (dv 1 2 3))
(def y (dv 10 20 30))
(dot x y)

Я получаю сообщение об ошибке ниже:

 Compiling math.core
 SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
 SLF4J: Defaulting to no-operation (NOP) logger implementation
 SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further 
details.
Syntax error compiling at (core.clj:8:1).
Exception in thread "main" Syntax error compiling at (core.clj:8:1).

................. .................

  Caused by: java.lang.UnsatisfiedLinkError: 
  C:\Users\ippok\AppData\Local\Temp\neanderthal-mkl- 
  0.21.07551967567311097171.dll: Can't find dependent libraries
  at java.base/java.lang.ClassLoader$NativeLibrary.load0(Native Method)
  at java.base/java.lang.
   ClassLoader$NativeLibrary.load(ClassLoader.java:2430)

Мой Путь включает в себя:

   C:\Users\ippok\Jars\jar_files
   C:\Program Files\MATLAB\R2018b\java\jarext\slf4j

Classpath

  C:\Users\ippok>java -classpath
   Error: -classpath requires class path specification

Ответы [ 2 ]

0 голосов
/ 16 апреля 2019

Я уже сделал это, поместите dll-файлы в PATH (установите PATH), но это проблема с dll MKL или проблема с jar-файлами.Это считается интуитивно понятной установкой?

0 голосов
/ 15 апреля 2019

Я ничего не знаю о неандертальцах, но здесь, похоже, есть ряд проблем:

  • Эта переменная среды объявлена ​​в стиле UNIX: DYLD_LIBRARY_PATH "/opt/intel/mkl/lib:/opt/intel/lib", но вы, похоже, работаете в Windows из-за вашей другой ошибки.

Я думаю, вы скопировали пример из lin-alg-app , но в соответствии с документами , в этом примере эта переменная среды используется при работе в Mac OS. Для Windows вы хотите что-то вроде следующего в вашем project.clj:

 :env-vars {:PATH "/Users/ippok/DLLs"}

В противном случае добавление пути к DLL-файлам в переменной среды PATH, например, выполнение следующего в cmd.exe перед запуском Leiningen:

set PATH=%PATH%;/Users/ippok/DLLs

... при условии, что вы установили собственные библиотеки в C:\Users\ippok\DLLs.

...