Ошибка с файлами библиотеки GMapsFX

Я пытаюсь связать библиотеку GMapsFX с файлом FXML, но эта ошибка продолжает появляться при попытке открыть фактическую страницу карты.

ФАЙЛ FXML:

<?xml version = "1.0" encoding = "UTF-8"?>

<?import com.lynden.gmapsfx.GoogleMapView?>
<?import javafx.scene.layout.AnchorPane?>


<AnchorPane maxHeight = "-Infinity" maxWidth = "-Infinity" minHeight = "-Infinity" 
minWidth = "-Infinity" prefHeight = "602.0" prefWidth = "540.0" 
xmlns = "http://javafx.com/javafx/9.0.1" xmlns:fx = "http://javafx.com/fxml/1">
   <children>
      <GoogleMapView layoutY = "1.0" prefHeight = "602.0" prefWidth = "540.0" />
   </children>
</AnchorPane>

Я уже загрузил правильные файлы JAR, но считаю, что это может быть ошибка.

Вот ошибка:

Caused by: java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at com.lynden.gmapsfx.GoogleMapView.<clinit>(GoogleMapView.java:55)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at java.lang.Class.newInstance(Class.java:442)
at sun.reflect.misc.ReflectUtil.newInstance(ReflectUtil.java:51)
at javafx.fxml.FXMLLoader$InstanceDeclarationElement.constructValue(FXMLLoader.java:1009)
at javafx.fxml.FXMLLoader$ValueElement.processStartElement(FXMLLoader.java:746)
at javafx.fxml.FXMLLoader.processStartElement(FXMLLoader.java:2707)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2527)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:2441)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3214)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3175)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3148)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3124)
at javafx.fxml.FXMLLoader.loadImpl(FXMLLoader.java:3104)
at javafx.fxml.FXMLLoader.load(FXMLLoader.java:3097)
at SignInAfterPage.SignInAfterPageController.createScene2(SignInAfterPageController.java:60)
at SignInAfterPage.SignInAfterPageController.openMapPage(SignInAfterPageController.java:41)
... 58 more
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 78 more

Точно такая же ошибка, как и в предыдущем вопросе. GMapFX использует slf4j как фасад для ведения журнала. Но эта библиотека не входит в GMapFX. Так что загрузите его и включите в свой путь к классам или используйте Maven, чтобы загрузить все зависимости. (требует больше времени вначале, если вы этого не знаете, но затем упростите жизненный цикл приложения, включая использование внешних библиотек).

Pagbo 18.12.2018 17:37

Да, я загрузил его и добавил в библиотеку, но ошибка все еще появляется, у вас есть более надежные ссылки?

Franklin Memet 18.12.2018 17:47

Какую библиотеку вы скачали? GMapFX? Поскольку я говорил о библиотеках slf4j, от которых зависит GMapFX. Если вы говорили о slf4j, какие из них вы скачали? Даже после добавления библиотек slf4j вы получите несколько дополнительных ошибок, потому что я почти уверен, что GMapFX зависит от других библиотек, а библиотека регистрации (например, logback или log4j) будет отсутствовать.

Pagbo 18.12.2018 18:02

ах, есть так много библиотек для загрузки, поэтому я не знаю, где все это взять

Franklin Memet 18.12.2018 18:09

Скачал только GMapsFX - 2. 12.0 jar

Franklin Memet 18.12.2018 18:11

что еще я должен скачать?

Franklin Memet 18.12.2018 18:11

На эта ссылка посмотрите на зависимости компиляции, загрузите их и добавьте в свой путь к классам.

Pagbo 18.12.2018 18:22
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
7
301
1

Ответы 1

Прочтите сообщение:

java.lang.ClassNotFoundException: org.slf4j.LoggerFactory

Вам нужно добавить slf4j-.jar в свой путь к классам:

https://www.slf4j.org/download.html

Для новых проектов я предлагаю использовать инструмент управления зависимостями, например знаток или Gradle. Это значительно упрощает обработку зависимостей.

Другие вопросы по теме