1. ホーム
  2. maven

[解決済み] IntelliJ IDEAプロジェクトにMavenライブラリを追加する方法を教えてください。

2022-02-18 13:09:13

質問

IntellijのプロジェクトにMavenのプロジェクトを追加して保存すると、次のようなエラーメッセージが表示されます。

プロジェクトを保存できませんでした。/Library/jbox2d/jbox2d-serialization/jbox2d-serialization.iml で子ファイルの作成に失敗しました。

書き込み権限がないため失敗しますが なぜ MavenはLibraryプロジェクトに何かを保存したいのでしょうか?

Libraryのdirを読み取り専用にするのは意味がないのでしょうか?私が変更したいのはIntelliJプロジェクトであって、結局のところ、ライブラリではありません。

解決方法は?

ライブラリ内のクラスにアクセスするだけであれば、IDEAプロジェクトにモジュールとして追加する必要はありません。その代わり、依存関係として追加してください。jbox2dはMaven Centralで利用できますので、IDEAのプロジェクトで 追加 -> ライブラリ... -> Mavenから... をクリックし、適切なバージョンのjbox2d-serializationを探します。IDEAは必要な依存関係をすべて含んでダウンロードします。

Maven Central で利用可能なバージョンよりも新しいバージョンが必要な場合は、jar を手動でダウンロードして依存関係に追加するか、ライブラリをソースからビルドする必要があり、その場合、モジュールとして追加する必要があります。

Libraryディレクトリを読み取り専用にすることにあまり意味があるとは思えません。ライブラリをソースからビルドする場合、コンパイルしたクラスとjarをどこかに書かなければなりません。ビルド済みの jar を使っている場合、例えば後でライブラリを更新したくなるかもしれません。ソースコードのファイルを読み終わったと思ったら、読み取り専用にすることはないでしょう?