Исключение в потоке "main" java.lang.NoClassDefFoundError: org/ejml/simple/SimpleBase
Кажется, что здесь отсутствует библиотека Java Efficient Java Matrix Library(ejml), поэтому я скачал из источников здесь. Я создаю исполняемый файл Maven Jar и работаю в среде Openstack EDP Spark.
У меня проблемы с выяснением, как решить эту проблему java.lang.NoClassDefFoundError: org/ejml/simple/SimpleBase
Я также пробовал ejml версии 0,23, 0,25, 0,27, 0,30, 0,31.
Exception in thread "main" java.lang.NoClassDefFoundError: org/ejml/simple/SimpleBase
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:195)
at org.openstack.sahara.edp.SparkWrapper.main(SparkWrapper.java:17)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.spark.deploy.SparkSubmit$.org$apache$spark$deploy$SparkSubmit$$runMain(SparkSubmit.scala:731)
at org.apache.spark.deploy.SparkSubmit$.doRunMain$1(SparkSubmit.scala:181)
at org.apache.spark.deploy.SparkSubmit$.submit(SparkSubmit.scala:206)
at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:121)
at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)
Caused by: java.lang.ClassNotFoundException: org.ejml.simple.SimpleBase
at java.net.URLClassLoader$1.run(URLClassLoader.java:359)
at java.net.URLClassLoader$1.run(URLClassLoader.java:348)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:347)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
1 ответ
Я знаю, что прошло 4 года, но на случай, если у кого-то еще возникнет такая же проблема, вот как я это сделал:
Я использую студию Android и добавляю «ejml-simple-0.39.jar» в качестве библиотеки, которая решила мою проблему.
В вашем build.gradle должна быть эта строка:
implementation files('libs/stanford-corenlp-4.4.0/ejml-simple-0.39.jar')
Не забудьте изменить его в соответствии с версиями вашей библиотеки