2016-08-13 5 views
1

これは他の場所で回答されていると確信していますが、自分のプロジェクト階層を整理する方法を完全に理解しているかどうかはわかりません。私のプロジェクトを整理する方法

私は、私が取り組んでいるプロジェクトを持っています。それは、他のさまざまなプロジェクトで使用している多くのユーティリティを保持しています。ロギングと「カスタム例外」 - - カレンダー/時刻関数 - 文字列関数

は、プロジェクトこの下にはMyProject.org.utils

私は論理的な ようなもののために部品の分離を持っているの主要部を呼び出すことができます。

私はeclipseを使用しており、それぞれMyProject.org.utilsの下に「パッケージ」として作成しています。

私はこのプロジェクトで2つのことをしたいと思っています。

私は各サブパーツごとに1つのjarをリリースしたいので、ロギングのためのすべてのものとカレンダー機能のためのものがすべて1つのjarです。

これは、これらを別のプロジェクトにインポートする必要がない場合、私は(私の他のすべてのプロジェクトで使用しているロギング用のものですが、しばしばカレンダーを使用しませんもの)。

これは私のMaven pom.xmlで行うことができると確信していますが、これを設定する方法がわかりません。

私は親のポンポンについて読んだことがありますが、仕事場にはpom.xmlが1つしかないので、自分の状況でこれを動作させる方法を理解しているとは思えません。

私はEclipseプロジェクトのワークスペース内の同じプロジェクト内にこれらの部分をすべて保持したいと思います。

これは私がより良いが、私は(簡潔にするためトリミング)何をしたいのかを説明できます助けを考えるこのプロジェクトのための現在のツリーのセットアップです:

├── log4j2.xml 
├── pom.xml 
├── README.md 
├── src 
│ ├── main 
│ │   ├── java 
│ │   │   └── myproject 
│ │   │    └── org 
│ │   │     └── utils 
│ │   │      ├── calendar 
│ │   │      ├── logging 
│ │   └── test 
│ │    ├── java 
│ │    │   └── myproject 
│ │    │    └── org 
│ │  │   └── utils 
│ │  │    ├── calendar 
│ │  │    ├── logging 
│ │    └── resources 
│ └── target 
│  ├── classes 
│ 
│... 

だから、基本的に、私はのための瓶たい:
myproject.org.utils.calendar
myproject.org.utils.logging

これを取得するにはpom.XMLを変更する方法です。

私は親を持っている必要があると思いますpom.xml、私はどこに子供を入れますか?pom.xml作成する2つのジャーのファイルはありますか?

これは間違った方法で行っていますか? チュートリアルなどの短い例やリンクは完璧です。
ご協力いただきありがとうございます。一般的に

デビッド

+0

*メイン*フォルダの下でなければなりません* src *フォルダ。また、* log4j2.xml *のようなファイルを置くべき* src/main/resources *フォルダも必要です。 * test *フォルダは、* main *フォルダと同じレベルにある必要があります。 jarファイルの入手方法については、[maven jar plugin documentation](https://maven.apache.org/plugins/maven-jar-plugin/)を参照してください。最後に、* target *フォルダーは、プロジェクトをビルドするときにmavenから生成され、* mvn clean *で削除されます。 –

+0

@MarioAlexandroSantiniその情報をありがとう。メインとの間違いで申し訳ありません。それは端末からの悪いコピー/貼り付けでした。あなたがリンクしているmaven jarプラグインのドキュメントを読んだことがありますが、私はこれをpom.xmlに書き込む方法を完全にはわからないことを認めなければなりません。私はそれが何とか '' ''設定を使うことを必要としていると確信していますが、私は自分自身のアーティファクトIDをそれぞれ与えているはずです。 – DaveM

答えて

0

は、あなたが各カレンダーとロギングもののためのMavenプロジェクト(別名のpom.xml)を作成する必要があります。ポムの梱包は、デフォルト値ジャーでなければなりません。それぞれのプロジェクト(カレンダーとロギング)には物理的な位置があり、スニペットのような共通のsrcフォルダはありません。これはパッケージまたはjarの名前には影響しません。また、それらの共通接頭辞を使用することもできます。

それらのために親のmavenプロジェクトを作成し、カレンダーおよびロギングプロジェクトをモジュールとして親のpomに含めることをお勧めします。親pomパッケージはpomである必要があります。 jarはモジュールによって生成されるため、親のpomのターゲットはありません。親のポンポンは、より簡単に管理依存関係、バージョンを作るプラグインなど

簡単日食(ファイル - >新規作成 - > Maven-> Mavenプロジェクトなど)あなたは gitに取り組ん例を見ることができます

で定義することができる

すべて。おそらく、バックグラウンドを取得するためのマニュアルを読む価値があります。

これは、他の人にとっても、これはより良いプロセスです。 - 初期のmavenプロジェクトを作成します(eclipse new - > mavenプロジェクトまたはコマンドラインを使用します)。 - あなたは(どのように上記のツリーに、新しく作成されたMavenのモジュールに気づくでしょう。これは、次の

├── myproject.org.utils.calendar 
│   ├── src 
| │ ├── main 
| │ └── test 
│   └── target 
├── src 
│   ├── main 
| │ ├── main 
| | │ └── java 
| | | │ └── myproject.org.utils.calendar_old 

のファイル構造になりますMavenのモジュール>

を - あなたは新しい選択しなければならない子パッケージを作成しますmyproject.org.utils.calendar)のサイトを、メインプロジェクトのルートに置くのではなく、典型的なEclipseのnew-> java->パッケージがsrc\main\javaの下にど​​のように置かれているかではありません。

この新しいモジュール(myproject.org.utils.calendar)は、独自のpom.xmlが含まれており、外側の「親」プロジェクトは現在、その中のpom.xml <modules>セクションの一部としてこれを持っている

+0

私は2つの独立したプロジェクトを作成しなければなりませんでした。 myproject.org.utils.calendarおよびmyproject.org.utils.logging。その後、myproject.org.utilsと呼ばれる新しいプロジェクトを作成した後、このプロジェクトに他のプロジェクトを追加しましたか?私の方法は自分のために悪い混乱を作成していたと思う。それをまっすぐにする方法がありますか? (日食またはクリスから)。ありがとう – DaveM

+0

いいえ。ちょうど私が書いたように。しかし、それほど大きな問題ではありません - 日食はあなたを助けるでしょう。 – asch

+0

私はあなたの返事を編集して、違いがどのように見えるか、eclipseでこれをどのように生成するかを説明しました。あなたが気にしないことを願っています。あなたが編集を受け入れるか(または適切に表示されるように変更する)、私はあなたの答えを受け入れます。 – DaveM

関連する問題