外部ライブラリをIntelliJ IDEAのプロジェクトに追加すると、アーティファクトをビルドするときにライブラリ内のクラスにアクセスできるようになりますか?IntelliJ IDEAのアーティファクトジャーナルに外部ライブラリを追加する
私はProject Structureから新しいJarアーティファクトを作成し、外部JARをライブラリに追加してからModules Listでチェックし、最終的にArtifactのOutputに追加しました。これらの作品はありません。私が構築し、自分のアプリケーションを実行しようとすると、エラーがスローされます。
Exception in thread "main" java.lang.NoClassDefFoundError: <path of the class trying to use>
何を私が行方不明ですか、私はこれは完全に間違っているのでしょうか?
あなたは私が25時間以上、多分2週間以上使った問題を解読しようとしました。どうもありがとうございました! また、これは動作しますが、その背後には何がありますか? IntelliJはMavenやAntなどを使用していますか? –
Mavenに基づくプロジェクトを使用することはできますが、それはあなたの状況とは無関係です。プロジェクトに新しい依存関係を追加すると、既存のアーティファクトに自動的に追加されません。アーティファクト構成をもう一度見直して、アプリケーションを実行するために必要なすべての欠落したライブラリをjarから追加する必要があります。別の一般的な間違いは、別のjarファイルに1つのjarファイルを入れて、jarファイルをメインjarファイルの中に解凍するか、またはその近くにコピーして、マニフェスト経由でリンクすることです(manifestに新しいjarファイルを追加することを忘れないでください)。場合)。 – CrazyCoder
Mavenベースのプロジェクトでは、Mavenプラグインを使用して依存関係を持つjarファイルを作成でき、IntelliJ IDEA成果物構成を使用する代わりにMavenゴールを実行して最終的な成果物を生成します。このようにして、 'pom 'に追加するすべての新しい依存関係。xml'はMavenが生成したjarファイルに自動的に表示されます。ほとんど同じことがGradleベースのプロジェクトにも当てはまります。 – CrazyCoder