Помогите Использование MySQL

Статус
Закрыто для дальнейших ответов.

_XATuKO_

Активный участник
Пользователь
Баллы
66
Имя в Minecraft
_XATuKO_
Добрый день, уважаемые кодеры. Пытаюсь сделать плагин на бабло. Решил использовать MySQL, потому что это практично, а ещё потому что другого хорошего способа на связку серверов не нашёл.
Проблема в том, что при загрузке плагина, он не может подключиться к MySQL (И отключиться от неё тоже, как бы странно это не звучало.). Все данные (хост, база, логин и пароль) проверял несколько раз.
Вот кусок кода:

Код:
public static String host = "localhost";
    public static String port = "3306";
    public static String database = "literond";
    public static String username = "groups";
    public static String password = "groups";
    
    public static Connection con;
    
    public static boolean isConnected() {
        return con != null;
    }
    
    public static void connect(){
        if(!isConnected()){
            try {
                con = DriverManager.getConnection("jdbc:mysql://"+host+":"+port+"/"+database+"?autoReconnect=true",username,password);
                Bukkit.getConsoleSender().sendMessage(main.prefix+"§aПодключено успешно! || Successfully connected!");
            } catch (SQLException e) {
                Bukkit.getConsoleSender().sendMessage(main.prefix+"§cОшибка при подключении к MySQL || Error with connecting to MySQL.");
            }
        }
    }
    
    public static void disconnect(){
        try {
            con.close();
            Bukkit.getConsoleSender().sendMessage(main.prefix+"§aУспешно отключено! || Successfully disconnected!");
        } catch (SQLException e) {
            Bukkit.getConsoleSender().sendMessage(main.prefix+"§cОшибка при отключении от MySQL || Error with disconnecting from MySQL.");
        }
    }

Ошибка в консоли (как бы странно не было это чудо, но там не пишется "Ошибка при подключении/отключении", что за магия?) :
java.lang.NullPointerException: null
at ru.ibusewinner.literond.mysql.disconnect(mysql.java:38) ~[?:?]
at ru.ibusewinner.literond.main.onDisable(main.java:20) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:266) ~[Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.java.JavaPluginLoader.disablePlugin(JavaPluginLoader.java:361) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.disablePlugin(SimplePluginManager.java:422) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.disablePlugins(SimplePluginManager.java:415) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.plugin.SimplePluginManager.clearPlugins(SimplePluginManager.java:456) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.reload(CraftServer.java:720) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.Bukkit.reload(Bukkit.java:525) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:27) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:649) [Spigot.jar:git-Spigot-3d850ec-809c399]
at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchServerCommand(CraftServer.java:635) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.DedicatedServer.aP(DedicatedServer.java:444) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:407) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [Spigot.jar:git-Spigot-3d850ec-809c399]
at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [Spigot.jar:git-Spigot-3d850ec-809c399]
at java.lang.Thread.run(Unknown Source) [?:1.8.0_144]
 
Не пишется, потому что ловишь SQLException, а получаешь NullPointerException.
Юзай Exception если тебе не важен тип.
Про NullPointerException, в каких случаях оно бросается и как его решать - есть на просторах гугла.
 
Не пишется, потому что ловишь SQLException, а получаешь NullPointerException.
Юзай Exception если тебе не важен тип.
Про NullPointerException, в каких случаях оно бросается и как его решать - есть на просторах гугла.
на это не так и важно обращать внимание. Плагин просто не может подключиться к б/д.
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх