新しいJ2EEWebアプリケーションのソース管理にSubversionを使用します。コード、テスト、ドキュメントを整理するために、どのディレクトリ構造をお勧めしますか?
4 に答える
私は通常、持っています
プロジェクトディレクトリ src-実際のソース doc-ドキュメント lib-ソースから参照されるライブラリ dep-libに収まらない依存関係のインストールファイル db-データベースインストールスクリプト
Visual Studioでの作業では、これがJavaの世界でも同じように機能するかどうかはわかりません。しかし、私は通常、srcのさまざまなプロジェクトフォルダにデータを入れます。ソースプロジェクトごとに、個別のテストプロジェクトがあります。ビルドファイルはメインプロジェクトディレクトリにあります。私は通常、プロジェクトをチェックアウトするだけでは不十分な場合にプロジェクトをセットアップする方法を文書化したREADMEもそこに置いています。
編集:これは、プロジェクトの単一の作業チェックアウトの構造です。リビジョン管理システムのブランチ/タグごとに複製されます(ほとんどのSVNシステムでは、コピーは安価です)。Subversionでの上記の例は、次のようになります。
/project
/trunk
/src
/doc
/...
/branches
/feature1
/src
/doc
/...
/feature2
/src
/doc
/...
ここSOであなたにとって興味深いかもしれないいくつかの古い質問を見つけました:
- PHP アプリケーションの標準的なコード レイアウトとして適切なものは何ですか?
- Web アプリケーションのスケーラブルで柔軟なディレクトリ構造に関する記事へのリンクが含まれています(ただし、PHP に焦点を当てています)。
- Java アプリケーションを構築する方法、つまり、クラスをどこに置くか?
- バージョン管理におけるプロジェクトの構造
Mendelt Sievenga が提案した内容を拡張するために、web
ディレクトリも追加します (JSP ファイル、WEB-INF、web.xml など)。
テストはtest
、メイン フォルダーの兄弟であるという名前のフォルダーに配置する必要がありsrc
ます。このようにして、ユニット テスト クラスは、テスト対象のソース コードと同じパッケージ名を持つことができます (保護されたメソッドまたはクラスをテストする状況を容易にするため)。例...これについてはJUnit FAQを参照し、テストファイルをどこに置くべきかについてのこの質問も参照してください)。
私自身はあまり使用していませんが、Maven プロジェクトはresources
、メインのソース コード (プロパティ ファイル、リソースなど) と共にパッケージ化/デプロイする非ソース コード用の src フォルダーの横にフォルダーも作成します。バンドルなど。マイレージはこれによって異なる場合があります。
J2EE Web アプリケーションの作成に Eclipse を使用しています。これにより、次のプロジェクト構造が作成されます。
WebAppName\
\lib
\src
\tests
etc...
次に、トランクに WebAppNameProject という名前の SVN フォルダーを作成します。このフォルダー内に、WebAppNameSource、Documentation などのフォルダーを作成します。WebAppNameSource フォルダー内に、Eclipse によって生成されたプロジェクト ソースを配置します。したがって、SVN には次のフォルダー構造があります。
\svn\trunk\WebAppNameProject
\WebAppNameSource
\lib
\src
\tests
etc...
\Documentation
お役に立てれば。