簡體   English   中英

MongoDB Java驅動程序:線程“ main”中的異常java.lang.NoClassDefFoundError:com / mongodb / MongoClient

[英]MongoDB java driver: Exception in thread “main” java.lang.NoClassDefFoundError: com/mongodb/MongoClient

將jar lib包含在ant build.xml中之后,仍然出現錯誤:

Exception in thread "main" java.lang.NoClassDefFoundError: com/mongodb/MongoClient

我的螞蟻相關的配置如下:

<target name="compile" depends="clean">
    <mkdir dir="${classes}"/>
    <javac srcdir="${src}" destdir="${classes}" includeantruntime="false" debug="on">
        <classpath id="classpath">
            <pathelement path="${classpath}"/>
            <fileset dir="lib">
                <include name="mongo-2.10.1.jar"/>
            </fileset>
        </classpath>
    </javac>
</target>

“包含”部分的東西正在工作,因為沒有包含部分,甚至我稍微更改了路徑名,我都會遇到找不到符號的錯誤,這意味着當前類路徑已真正包含在文件中。 但是為什么它仍然不起作用,有人知道嗎?

順便說一句,這是我的Java代碼的第一行出現錯誤:

MongoClient mongoClient = new MongoClient("localhost",27017);

甚至不進行插入和查詢操作.....

您只在這里共享了“編譯”目標-如果您僅將mongo jar文件添加到了編譯目標,那么在實際運行時,您將丟失依賴項。

檢查mongo jar是否也在運行時類路徑上-這可能在“ java” ant目標中配置,具體取決於您的應用程序。

您可能需要直接檢查mongo-java-driver-XXX.jar文件。 較早的版本沒有com.mongodb.MongoClient類。 您可以代替Mongo。

代替

MongoClient client = new MongoClient();

輸入:

Mongo client = new Mongo();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM