Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MongoDB Java简单示例失败_Java_Mongodb_Mongodb Query - Fatal编程技术网

MongoDB Java简单示例失败

MongoDB Java简单示例失败,java,mongodb,mongodb-query,Java,Mongodb,Mongodb Query,Mongo DB服务器正在本地计算机上运行。我可以打开MongoShell并查询数据库,没有任何问题 java文件编译时没有任何错误。然而,在执行时,我得到了一个错误 Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/MongoClient at mongoTest.main(mongoTest.java:26) Caused by: java.lang.ClassNotFoundExce

Mongo DB服务器正在本地计算机上运行。我可以打开MongoShell并查询数据库,没有任何问题

java文件编译时没有任何错误。然而,在执行时,我得到了一个错误

Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/MongoClient
        at mongoTest.main(mongoTest.java:26)
Caused by: java.lang.ClassNotFoundException: com.mongodb.MongoClient
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 1 more
我编写的示例Java代码如下所示。当我在命令提示符下执行文件时

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;

public class mongoTest {

    public static void main(String[] args) {

        MongoClient c = new MongoClient("localhost", 27017);
        MongoDatabase database = c.getDatabase("video");
        MongoCollection collection = database.getCollection("movieDetails");

        System.out.println(collection.count());

    }
}

您只需使用以下内容运行该类:

java-cp mongoTest


将类的名称大写也是标准的Java实践,因此
MongoTest
而不是
MongoTest

看起来是类路径的问题。你是如何执行这个程序的?通过IDE或通过命令行?在命令行编译java文件。编译期间没有错误。尝试使用命令java mongoTestAnd执行相同的操作,当编译类时,是否指定了指向MongoDB JAR的类路径选项?是。。。FYI MongoDB服务器版本为3.6.2,命令行中的Java8更新171编译语句为-javac-cp。;C:\Java\jdk1.8.0_171\jre\lib\mongo\bson-3.6.2.jar;C:\Java\jdk1.8.0_171\jre\lib\mongo\mongodb-driver-3.6.2.jar;C:\Java\jdk1.8.0_171\jre\lib\mongo\mongodb-driver-core-3.6.2.jar;C:\Java\jdk1.8.0_171\jre\lib\mongo\mongo-Java-driver-3.6.2.jar mongoTest.Java编译过程中无错误谢谢。。那起作用了。。。同样关于java实践。。我会记住的。刚开始用java和Mongoi编程如果您还没有遇到它,请访问为java开发人员提供的免费在线MongoDB课程。这很值得。这是我看到的第一件事:)。当下一次跑步在本月29日开始时,我肯定会去上这门课。非常感谢。