Исключение LoggerFactoryJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Исключение LoggerFactory

Сообщение Anonymous »

В моем Java-приложении мне нужно использовать пул соединений, поэтому я решил реализовать HibernateCP. Проблема в том, что я получаю исключение, которое мне нужно добавить: org/slf4j/LoggerFactory. Полное исключение:
INFO: HHH000490: Using JTA platform [org.hibernate.engine.transaction.jta.platform.internal.JBossStandAloneJtaPlatform]
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: org/slf4j/LoggerFactory
at com.zaxxer.hikari.HikariConfig.(HikariConfig.java:48)
at Database_Managment.DatabaseConfig.(DatabaseConfig.java:16)
at Database_Managment.DBFunctionality.checkUser(DBFunctionality.java:45)
at DTOS.LogInView$4.mouseClicked(LogInView.java:221)
at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
at java.desktop/java.awt.Component.processMouseEvent(Component.java:6629)
at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3389)
at java.desktop/java.awt.Component.processEvent(Component.java:6391)
at java.desktop/java.awt.Container.processEvent(Container.java:2266)
at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5001)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2324)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4948)
at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4584)
at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4516)
at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2310)
at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2780)
at java.desktop/java.awt.Component.dispatchEvent(Component.java:4833)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:773)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:97)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:746)
at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:744)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:743)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Caused by: java.lang.ClassNotFoundException: org.slf4j.LoggerFactory
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 35 more

Я пробовал много способов, разные спецификации и т. д., но я еще не изучал Maven или зависимости, поэтому у меня есть базовые знания, и я мог что-то упустить.
p>
Я запускаю проект из IntelliJ IDEA. Я не знаю, получает ли проект ошибку также из командной строки. Ошибка возникает как в интерфейсе входа в систему, так и при использовании основного метода для запуска того, что вызывает ошибку.
Связанные классы:
Конфигурация базы данных:
package Database_Managment;

import com.zaxxer.hikari.HikariConfig;
import com.zaxxer.hikari.HikariDataSource;

import javax.sql.DataSource;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

public class DatabaseConfig {

private static HikariDataSource dataSource;

static {
HikariConfig config = new HikariConfig();
config.setJdbcUrl("jdbc:mysql://localhost:3306/storefront");

try {
Properties accessProperties = new Properties();
accessProperties.load(new FileInputStream("C:\\Users\\andre\\IdeaProjects\\demo\\Project-Poster\\src\\user.properties"));
//prop. to access the host
config.setUsername(accessProperties.getProperty("username"));
config.setPassword(accessProperties.getProperty("password"));

} catch (IOException e) {
throw new RuntimeException(e);
}

config.setMaximumPoolSize(1); // Adjust the pool size based on your needs
config.setIdleTimeout(60000); // Connection idle time
config.setConnectionTimeout(30000); // Connection timeout

dataSource = new HikariDataSource(config);
}

public static DataSource getConnectionPool() {
return dataSource;
}
}

Функциональность базы данных:
package Database_Managment;

import Client.Person;
import Server.ServerView;
import com.mysql.cj.jdbc.MysqlDataSource;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;

public final class DBFunctionality {

static String checkUserQuery = "SELECT username FROM storefront.users WHERE username = ? AND password = ?";

public static void manageClientData(String username, String password, String iconId, String status, String profileLink, boolean isNew, Person person) {

if (isNew) {
var ds = new MysqlDataSource();
ds.setServerName("localhost");
ds.setPort(3306);
ds.setUser("And_GG");
ds.setPassword("Sample Password"); //Can't show the real password

try (Connection conn = ds.getConnection(); Statement st = conn.createStatement()) {

String[] joinedValues = {username, password, profileLink, iconId, status};
String insertQuery = "INSERT INTO storefront.users (username, password, link, img, status) VALUES (?, ?, ?, ?, ?)";
PreparedStatement ps = conn.prepareStatement(insertQuery);

for (int i = 1; i

Подробнее здесь: https://stackoverflow.com/questions/790 ... -exception
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»