PROJECT ファイル形式とは?
.project ファイルは、Eclipse IDE がすべてのワークスペースプロジェクトのルートディレクトリに配置する XML 記述子です。これは、フォルダーを Eclipse プロジェクトとして識別するための主要なメタデータファイルであり、Eclipse がワークスペースを開くたびに読み込まれます。このファイルは IDE によって自動生成されますが、通常はバージョン管理にコミットされ、他の開発者が手動で再設定することなくプロジェクトをインポートできるようにします。
XML のルート要素は <projectDescription> で、プロジェクトの <name>、オプションの <comment>、参照されているプロジェクト依存関係のリストである <projects>、登録されたビルダー(Java の増分コンパイル用の org.eclipse.jdt.core.javabuilder など)をリストする <buildSpec> セクション、およびプロジェクトタイプを識別する <natures> セクション(例:Java プロジェクトの場合は org.eclipse.jdt.core.javanature、Eclipse プラグインプロジェクトの場合は org.eclipse.pde.PluginNature)が含まれています。
Eclipse は、org.eclipse.core.resources バンドル内の IProjectDescription インターフェースを介してこのファイルを読み書きします。この形式は Eclipse 3.x(2004年)以来安定しています。Spring Tool Suite、Zend Studio、古い MyEclipse を含むすべての Eclipse ベースの IDE は、同じ .project 形式を共有しています。IntelliJ IDEA や VS Code(Eclipse 互換拡張機能を使用)などのツールも、プロジェクトの移行時に .project ファイルをインポートできます。このファイルを削除すると、Eclipse はそのディレクトリに関するすべてのプロジェクトメタデータを失います。
セキュリティと安全性
リスク: LOWIDE によって生成されるプレーンな XML 設定ファイルであり、実行可能コードは含まれません。悪意を持って作成された .project ファイルは、任意のファイルシステムパスを指すリンクされたリソースを参照する(Eclipse ワークスペース内でのパス・トラバーサル)可能性がありますが、これには被害者がそれを Eclipse にインポートしてビルドを実行する必要があります。
形式の詳細
概要- IntelliJ IDEA Eclipse インポート - IntelliJ は Eclipse プロジェクトをインポートするために .project を読み取りますが、ネイティブでは独自の .iml 形式を使用します。
- Spring Tool Suite (STS) - Eclipse ベースの IDE であり、アップストリームの Eclipse と同様に .project ファイルを作成および読み取ります。
PROJECT ファイルを開くプログラム
技術的詳細
詳細仕様| ファイル形式 | XML(UTF-8 エンコードされたプレーンテキスト) |
| ルート要素 | <projectDescription> |
| ファイルの場所 | 常に Eclipse プロジェクトのルートディレクトリに配置 |
| 主な子要素 | <name>, <comment>, <projects>, <buildSpec>, <natures> |
| ビルダーの登録 | <buildSpec> に増分ビルドコマンドをリスト(例:Java 用の org.eclipse.jdt.core.javabuilder) |
| ネイチャー識別子 | <natures> でプロジェクトタイプを定義(例:Java 用の org.eclipse.jdt.core.javanature、プラグイン用の org.eclipse.pde.PluginNature) |
| API マッピング | org.eclipse.core.resources バンドルの IProjectDescription インターフェースを介して読み書き |
| 標準的なサイズ | 1-10 KB |
| エンコーディング | UTF-8 |
| バージョン管理 | 通常は VCS にコミットされ、手動の IDE 再設定なしでプロジェクトのインポートを可能にする |
| 形式の安定性 | Eclipse 3.x(2004年)以来安定。現在の Eclipse リリースでも変更なし |
| IDE 間の互換性 | Spring Tool Suite、Zend Studio で使用。Eclipse プラグインを備えた IntelliJ IDEA や VS Code でインポート可能 |
| 削除時の損失 | ファイルを削除すると、Eclipse はそのディレクトリのすべてのプロジェクトメタデータを失う |
| リリース日 | 2001 (Eclipse 1.0) |
| 最新バージョン | No formal versioned spec; format stable since Eclipse 3.x (2004) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | help.eclipse.org |
PROJECT の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。PROJECT ファイルについて最初の質問をしてみましょう。
よくある質問
.project ファイルを削除しても大丈夫ですか?
.project を Git にコミットすべきですか?
インポート時に Eclipse が « project already exists » と表示するのはなぜですか?
<name> を持つプロジェクトが既にワークスペース内に存在します。まず既存のプロジェクトを(コンテンツを削除せずに)閉じるか削除してから、再インポートしてください。