Java / Maven - строка подключения MongoDB - PullRequest
0 голосов
/ 01 апреля 2020

я программирую с Java и Maven в IntelliJ.

Мой pom. xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>BungeeSystem - Riveax</artifactId>
    <version>1.0-SNAPSHOT</version>

    <packaging>jar</packaging>

    <repositories>
        <repository>
            <id>bungeecord-repo</id>
            <url>https://oss.sonatype.org/content/repositories/snapshots</url>
        </repository>
    </repositories>


    <dependencies>
            <dependency>
                <groupId>net.md-5</groupId>
                <artifactId>bungeecord-api</artifactId>
                <version>1.8-SNAPSHOT</version>
            </dependency>

        <dependency>
            <groupId>org.mongodb</groupId>
            <artifactId>mongo-java-driver</artifactId>
            <version>LATEST</version>
            <scope>compile</scope>
        </dependency>

    </dependencies>

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <filtering>true</filtering>
                <includes>
                    <include>*.yml</include>
                </includes>
            </resource>
        </resources>
    </build>


</project>

И мой MongoDBManager:

package de.riveax.james.bungeesystem.mongodb;

import com.mongodb.*;
import com.mongodb.client.MongoClient;
import com.mongodb.client.MongoClients;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.Document;

import java.text.MessageFormat;
import java.util.Arrays;

public class MongoManager {

    private final String hostname;
    private final int port;

    private MongoClient client;
    private MongoDatabase database;

    private MongoCollection<Document> players;

    public MongoManager(String hostname, int port) {
        this.hostname = hostname;
        this.port = port;
    }

    public void connect() {
        this.client =  MongoClients.create(new ConnectionString(MessageFormat.format("mongodb://{0}:{1}", hostname, port)));
        this.database = this.client.getDatabase("admin");
        this.players = this.database.getCollection("players");
    }

    public void connect(String username, String password, String database) {
        this.client = MongoClients.create(new ConnectionString(MessageFormat.format("mongodb://{0}:{1}@{3}:{4}/{5}", username, password, hostname, port, database)));

        this.database = this.client.getDatabase("admin");
        this.players = this.database.getCollection("players");
    }

    public MongoCollection<Document> getPlayers() {
        return players;
    }

}

когда я подключаюсь к базе данных, и я получаю сообщение об ошибке: "java .lang.NoClassDefFoundError: com / mongodb / ConnectionString"

моя ошибка: java.lang.NoClassDefFoundError: com/mongodb/ConnectionString [02.04 07:18:36.201] INFO: [Proxy-1] at de.riveax.james.bungeesystem.mongodb.MongoManager.connect(MongoManager.java:29) [02.04 07:18:36.201] INFO: [Proxy-1] at de.riveax.james.bungeesystem.BungeeSystem.init(BungeeSystem.java:35) [02.04 07:18:36.201] INFO: [Proxy-1] at de.riveax.james.bungeesystem.BungeeSystem.onEnable(BungeeSystem.java:19) [02.04 07:18:36.201] INFO: [Proxy-1] at net.md_5.bungee.api.plugin.PluginManager.enablePlugins(PluginManager.java:250) [02.04 07:18:36.201] INFO: [Proxy-1] at net.md_5.bungee.BungeeCord.start(BungeeCord.java:286) [02.04 07:18:36.201] INFO: [Proxy-1] at net.md_5.bungee.BungeeCordLauncher.main(BungeeCordLauncher.java:62) [02.04 07:18:36.201] INFO: [Proxy-1] at net.md_5.bungee.Bootstrap.main(Bootstrap.java:15) [02.04 07:18:36.201] INFO: [Proxy-1] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [02.04 07:18:36.201] INFO: [Proxy-1] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) [02.04 07:18:36.202] INFO: [Proxy-1] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [02.04 07:18:36.202] INFO: [Proxy-1] at java.lang.reflect.Method.invoke(Method.java:498) [02.04 07:18:36.202] INFO: [Proxy-1] at de.dytanic.cloudnet.wrapper.Wrapper.lambda$startApplication$5(Wrapper.java:480) [02.04 07:18:36.202] INFO: [Proxy-1] at java.lang.Thread.run(Thread.java:748) [02.04 07:18:36.202] INFO: [Proxy-1] Caused by: java.lang.ClassNotFoundException: com.mongodb.ConnectionString [02.04 07:18:36.202] INFO: [Proxy-1] at net.md_5.bungee.api.plugin.PluginClassloader.loadClass0(PluginClassloader.java:63) [02.04 07:18:36.202] INFO: [Proxy-1] at net.md_5.bungee.api.plugin.PluginClassloader.loadClass(PluginClassloader.java:37) [02.04 07:18:36.202] INFO: [Proxy-1] at java.lang.ClassLoader.loadClass(ClassLoader.java:352) [02.04 07:18:36.202] INFO: [Proxy-1] ... 13 more [02.04 07:18:36.202] INFO: [Proxy-1] 07:18:36 [INFO] Enabled plugin cmd_send version git:cmd_send:1.15-SNAPSHOT:697f087:1487 by SpigotMC [02.04 07:18:36.202] INFO: [Proxy-1] 07:18:36 [INFO] Enabled plugin cmd_list version git:cmd_list:1.15-SNAPSHOT:697f087:1487 by SpigotMC

моя база данных работает, я могу связаться со Studio3T

Если вы можете мне помочь, я благодарен и извиняюсь за мой плохой английский sh!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...