Über Classpath MongoDB Treiber einbinden und korrekte import Pfade

Chrisux1234

Mitglied
Leider kann ich keine Moderne IDE einsetzen.
Daher muss ich mich mit Javac begnügen.


Hier ist mein Javac Befehl:

Code:
javac -classpath "mongodb-driver-3.7.0-javadoc.jar:mongodb-driver-async-3.7.0-javadoc.jar:mongodb-driver-core-3.7.0-javadoc.jar:mongodb-driver-sync-3.7.0-javadoc.jar:mongo-java-driver-3.7.0-javadoc.jar"  mongodb_connection.java
Sofern ich alles richtig verstanden habe benötige ich folgenden Fünf Jar Dateien für die Version 3.7.0
https://mongodb.github.io/mongo-java-driver/

Die jar Dateien sind wie die java Datei im selben Ordner.
Aber nun kommen wir zu meiner vermuteten Fehlerquelle.
Die Pfade bei den Import Befehlen sind vermute ich falsch. Ich weiß aber nicht wie ich die richtig setzen soll :-(

Java Code:
Code:
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.ServerAddress;

import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;

import org.bson.Document;
import java.util.Arrays;
import com.mongodb.Block;

import com.mongodb.client.MongoCursor;
import static com.mongodb.client.model.Filters.*;
import com.mongodb.client.result.DeleteResult;
import static com.mongodb.client.model.Updates.*;
import com.mongodb.client.result.UpdateResult;
import java.util.ArrayList;
import java.util.List;



import java.util.List;
import java.util.Set;



import static java.util.concurrent.TimeUnit.SECONDS;

public class mongodb_connection{

    public static void main( String args[] ){

      System.out.println("Hello World");

/*
You can instantiate a MongoClient object without any parameters to connect to a MongoDB instance running on localhost on port 27017
*/
      try{
          //Connection
          //          MongoClient mongoClient = new MongoClient("127.0.0.1",27017 );

          //          DB db = mongoClient.getDB("mydb");
         
      }catch(IllegalArgumentException  ie){
          System.err.println(ie.getMessage());
      }

     
    }
}


Fehlermeldungen beim kompilieren:
import com.mongodb.MongoClient;
^
mongodb_connection.java:2: error: package com.mongodb does not exist
import com.mongodb.MongoClientURI;
^
mongodb_connection.java:3: error: package com.mongodb does not exist
import com.mongodb.ServerAddress;
^
mongodb_connection.java:5: error: package com.mongodb.client does not exist
import com.mongodb.client.MongoDatabase;
^
mongodb_connection.java:6: error: package com.mongodb.client does not exist
import com.mongodb.client.MongoCollection;
^
mongodb_connection.java:8: error: package org.bson does not exist
import org.bson.Document;
^
mongodb_connection.java:10: error: package com.mongodb does not exist
import com.mongodb.Block;
^
mongodb_connection.java:12: error: package com.mongodb.client does not exist
import com.mongodb.client.MongoCursor;
^
mongodb_connection.java:13: error: package com.mongodb.client.model does not exist
import static com.mongodb.client.model.Filters.*;
^
mongodb_connection.java:14: error: package com.mongodb.client.result does not exist
import com.mongodb.client.result.DeleteResult;
^
mongodb_connection.java:15: error: package com.mongodb.client.model does not exist
import static com.mongodb.client.model.Updates.*;
^
mongodb_connection.java:16: error: package com.mongodb.client.result does not exist
import com.mongodb.client.result.UpdateResult;
^
12 errors
 

mrBrown

Super-Moderator
Mitarbeiter
Leider kann ich keine Moderne IDE einsetzen.
Warum denn nicht? o_O

Daher muss ich mich mit Javac begnügen.
Kannst du wenigstens ein Build-Tool nutzen?
Per Hand mit Abhängigkeiten zu kompilieren verlangt hoffentlich niemand...

Hier ist mein Javac Befehl:

Code:
javac -classpath "mongodb-driver-3.7.0-javadoc.jar:mongodb-driver-async-3.7.0-javadoc.jar:mongodb-driver-core-3.7.0-javadoc.jar:mongodb-driver-sync-3.7.0-javadoc.jar:mongo-java-driver-3.7.0-javadoc.jar"  mongodb_connection.java
Sofern ich alles richtig verstanden habe benötige ich folgenden Fünf Jar Dateien für die Version 3.7.0
https://mongodb.github.io/mongo-java-driver/

Die jar Dateien sind wie die java Datei im selben Ordner.
Aber nun kommen wir zu meiner vermuteten Fehlerquelle.
Die Pfade bei den Import Befehlen sind vermute ich falsch. Ich weiß aber nicht wie ich die richtig setzen soll :-(

Die Imports sind richtig, du gibst beim Kompilieren aber nur die Javadoc-Jars an, du solltest da schon die normalen jars nutzen ;)
 

Chrisux1234

Mitglied
Danke schonmal ich komme der Sache näher.
Der Javac Befehl scheint jetzt richtig zu sein.
Code:
javac -classpath "bson-3.7.0.jar:mongodb-driver-3.7.0.jar:mongodb-driver-core-3.7.0.jar" mongodb_connection.java

Nur der Java Code macht jetzt Probleme.
Code:
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.ServerAddress;

import com.mongodb.client.MongoDatabase;
import com.mongodb.client.MongoCollection;

import org.bson.Document;
import java.util.Arrays;
import com.mongodb.Block;

import com.mongodb.client.MongoCursor;
import static com.mongodb.client.model.Filters.*;
import com.mongodb.client.result.DeleteResult;
import static com.mongodb.client.model.Updates.*;
import com.mongodb.client.result.UpdateResult;
import java.util.ArrayList;
import java.util.List;



import java.util.List;
import java.util.Set;



import static java.util.concurrent.TimeUnit.SECONDS;

public class mongodb_connection{

    public static void main( String args[] ){

      System.out.println("Hello World");

/*
You can instantiate a MongoClient object without any parameters to connect to a MongoDB instance running on localhost on port 27017
*/
      try{
          //Connection
      MongoClient mongoClient = new MongoClient("127.0.0.1",27017 );
      //      DB db = mongoClient.getDB("mydb");
        
      }catch(IllegalArgumentException  ie){
          System.err.println(ie.getMessage());
      }

    
    }
}

Fehlermeldung:
java mongodb_connection
Hello World
Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/MongoClient
at mongodb_connection.main(mongodb_connection.java:40)
Caused by: java.lang.ClassNotFoundException: com.mongodb.MongoClient
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 1 more
Das verzweifelte einfügen von
import java.lang.*;
import java.net.URLClassLoader.*
hat eben auch nicht geholfen :/
 

Chrisux1234

Mitglied
Ich liebe euch.
java -cp .:/home/cseipel/mongo/* mongodb_connection
Hello World
Mai 04, 2018 7:38:13 PM com.mongodb.diagnostics.logging.JULLogger log
INFORMATION: Cluster created with settings {hosts=[127.0.0.1:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
Endlich kann ich mal anfangen zu programmieren.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Über Internet Datenbank mit Programm abrufen Datenbankprogrammierung 17
J Über einen Button eine SQL-DB aussuchen Datenbankprogrammierung 3
N Java, sql, jar, JDBC-Treiber in Classpath Datenbankprogrammierung 8
E ClassNotFoundException bei verschiedenen MS SQL Treibern trotz Classpath-Eintrag Datenbankprogrammierung 5
J MySQL Classpath Datenbankprogrammierung 7
N classpath für jdbc unter xp Datenbankprogrammierung 2
R Mongodb testen bzw mocken Datenbankprogrammierung 3
R Mongodb Daten werden immer überschrieben Datenbankprogrammierung 7
R Mongodb tree Architektur Datenbankprogrammierung 6
R Mongodb Unterschied MongoClient und Repository. Datenbankprogrammierung 3
R Mongodb Daten in einem bestimmten Document speichern Datenbankprogrammierung 1
R Mongodb Authentication failed Datenbankprogrammierung 6
R Beste Lösung für User Erstellung in mongodb Datenbankprogrammierung 1
6 MongoDB Dokument basierend auf Referenz finden Datenbankprogrammierung 1
MongoDB-Datenbank in Androidstudio einbinden Datenbankprogrammierung 1
T Spring MongoDB: Auswertung schlägt fehl Datenbankprogrammierung 1
T Spring MongoDB: Prüfen ob bereits eine Email existiert Datenbankprogrammierung 15
T Spring MongoDB @Indexed(unique=true) Datenbankprogrammierung 0
T Spring MongoDB self-reference Datenbankprogrammierung 2
N MongoDB Datenbankprogrammierung 5
S MongoDB löschung ohne Cascade Datenbankprogrammierung 1
OnDemand MySQL und mongoDB wann macht was Sinn? Datenbankprogrammierung 11
S MongoDB Community Edition Datenbankprogrammierung 1
S MongoDB - Abfrageergebnis in Array speichern Datenbankprogrammierung 2
B MongoDB- Queryception Datenbankprogrammierung 6
M MongoDb Versändnis Fragen: ( multiserver, morphia/morphium ) Datenbankprogrammierung 0
A MongoDB Passwort Problem Datenbankprogrammierung 0
T MongoDB: Morphia REST 505 Exception Tomcat Datenbankprogrammierung 2
G MongoDB - klassisches one to many Datenbankprogrammierung 2
P MongoDB vs. andere DBs Datenbankprogrammierung 0
D Daten posten auf RestApi (Mongodb/NoSQL) Datenbankprogrammierung 0
F MSSql oder MongoDB für die Speicherung von POI Datenbankprogrammierung 9

Ähnliche Java Themen

Neue Themen


Oben