私のチームが取り組んでいる種類のプロジェクト (Embedded Java) 用の「プロジェクト テンプレート」を作成する可能性を調査しています。私たちは、新しい開発者が新しいプロジェクトの作成を台無しにしないようにすることを簡単にしたいと考えています。私たちのチームで使用するすべてのツールは、PR でなければなりません。
基本的な考え方は、プロジェクトと IDE をセットアップするための1 つのコマンドで、次の機能を提供する必要があるということです。
- Eclipse プロジェクト ファイルを含む新しい Java プロジェクトを作成します。
- ビルド スクリプトを作成します (IDE の外部で作業する必要があります)。
- ビルド スクリプトにデプロイ オプションを含めます。
- git プロジェクトをセットアップします。
- IDE に統合された設定済みのルール セットを使用して PMD を実行するように設定します。
- IDE に統合された構成済みの一連のルールで実行するように Checkstyle をセットアップします。
- チームのコーディング ガイドライン (Javadoc など) に合わせてコード テンプレート (Eclipse) を構成します。
- Eclipse コード フォーマッターを構成します。
- コマンドの構成は、簡単にアップグレードできる必要があります。
これまでのところ、これを行うには2つの方法があります。
- Maven 2 Archetype : 私は基本的に maven が好きではありません。ツールに自分のやりたいことをさせようとするオーバーヘッドが、その努力を正当化するかどうかはわかりません。一方で、これはまさにアーキタイプがすべきことのように思えます。eclipse:eclipse の部分をどこまでカスタマイズできるか、経験はありますか? Eclipse の構成が最も複雑なステップになると思います。
- Eclipse ネイチャー: プロジェクト ネイチャーを作成できました。私が右クリック - > New - > My Java Project Type のようなものを提供することを選択した場合、表示されるコンポーネントである Eclipse Ecosystem を理解している限り。結果の Eclipse プロジェクトをどこまでカスタマイズできるか知っていますか?
- シェル スクリプト: すべての構成が整った空のプロジェクトを作成し、関連するプレーン テキスト ファイルにいくつかの特別なトークンを導入することができます (次に、プロパティ ファイルからこれらのオプションの値を読み取るシェルスクリプトを作成し、プロジェクト テンプレートをコピーして置き換えます)。その価値。)。少し壊れやすいかもしれませんが、簡単で迅速な方法のようです。
もう少しコンテキストを教えてください。結果が私たちをEclipseに閉じ込めるなら、それは問題ありません。ビルドは (CI の場合) Eclipse なしで実行する必要がありますが、チームは Eclipse を使用しており、切り替える可能性はほとんどありません。また、すべての開発者は多かれ少なかれ同じハード + ソフトウェア (Linux) を実行します。私たちは Enterprise Java Apps のドメインで作業していないので、maven の高度な依存関係管理機能はまったく必要ありません。実際のところ、私たちのビルド プロセスは非常に特殊であるため、make または ant スクリプトを呼び出すだけの方がおそらくはるかに簡単です。
したがって、質問は次のとおりです。
- この種の経験はありますか?
- Eclipse Nature 方式または Maven 方式のいずれかについて意見はありますか?
- そのようなセットアップを提供する他のツールを知っていますか?
ご意見をお寄せいただきありがとうございます。
乾杯、バレンティン
PS: 人々はビルド ツールについて信心深いようです。ここで、maven の賛成または反対のフレームワークを開始したくないことに注意してください。Maven は優れたツールになると確信していますが、私たちのコンテキストでは、その機能の 5% しか必要なく、私の経験から、残りの 95% が邪魔になる可能性があると思います。