Mongo数据库服务器正在本地计算机上运行。我可以打开mongo shell并查询数据库,没有任何问题。
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());
}
}
答案 0 :(得分:1)
你只需要运行类似的东西:
java -cp <path-to-your-mongodb-jars> mongoTest
将类的名称大写,这也是标准的Java实践,因此MongoTest
而不是mongoTest