0

jarlibをantbuild.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);

挿入およびクエリ操作に到達していなくても.....

4

2 に答える 2

1

ここで「コンパイル」ターゲットのみを共有しました-mongo jarファイルをコンパイルターゲットに追加しただけの場合、実際に実行すると、依存関係が失われます。

mongo jar がランタイム クラスパスにもあることを確認します。これは、アプリケーションによっては、「java」ant ターゲットで構成されている場合があります。

于 2013-03-14T12:18:48.023 に答える
-1

mongo-java-driver-XXX.jar ファイルを直接確認することをお勧めします。古いビルドにはクラス com.mongodb.MongoClient がありません。代わりに Mongo を使用できます。

それ以外の

MongoClient client = new MongoClient();

次のように入力します。

Mongo client = new Mongo();
于 2013-11-30T14:34:34.817 に答える