[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 01/24 18:04 / Filesize : 134 KB / Number-of Response : 426
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【玄人】プロジェクト管理ツールApache Maven【2.0登場】



1 名前:デフォルトの名無しさん [2005/11/14(月) 23:03:08 ]
ついにMaven2.0が出た。Apache Antよりも
楽に種種のプロジェクトを管理できるツールMaven2.0
PerlのCPANのように必要なライブラリを自動でダウンロード/アップデートして
くれる。 checkstyleやプロジェクトサイト、JAR生成からサーバへのデプロイなど
様々なタイプのドキュメント、テストレポート、アーカイブを自動生成もできる。
CVS, Subversion(用プラグイン)への接続も可能。
プラグインで拡張することも可能。EclipseなどのIDEと連携することも可能。

プロジェクト管理ツール・メイヴィン (英語)
maven.apache.org/
Maven 日本語サイト(やや古い)
www.ingrid.org/jajakarta/turbine/jp/turbine/maven/
“一人前”になったApacheのMavenプロジェクト
www.itmedia.co.jp/news/articles/0407/16/news057.html
プロジェクト管理: Mavenでもっと簡単に
www-6.ibm.com/jp/developerworks/java/030613/j_j-maven.html
Mavenを使った開発
www.02.246.ne.jp/~torutk/maven/
Mavenについてのメモ
terai.s55.xrea.com/Maven.html
Maven
sakito.s2.xrea.com/moin/moin.cgi/Maven
Mavenメモ
muimi.com/j/apache/maven/
プロジェクト: Mavenプラグイン
maven-plugins.sourceforge.jp/
Mavenではじめるプロジェクトドライブ
www.objectclub.jp/technicaldoc/tools/maven/maven_top/
Eclipse Mavenプラグイン
mevenide.codehaus.org/mevenide-ui-eclipse/
【玄人】我が名はプロジェクトマネージャーMaven@プログラマー
pc8.2ch.net/test/read.cgi/prog/1090129578/

313 名前:デフォルトの名無しさん [2007/11/01(木) 21:59:29 ]
mvn archetype:create -DartifactId=mysample \
 -DarchetypeArtifactId=maven-archetype-webapp

で web アプリのディレクトリの雛形を作り、web アプリを作っています。
質問(疑問)があります。
jsp を少し書き換えるたび、mvn package して target 以下に修正後の jsp をコピーしてから
ブラウザをリロードして確認していますが、こういうものなの?

{mysample}
│pom.xml
├src
│└main
│ ├java
│ ├resources
│ └webapp
│  │index.jsp ←エディタでいじるのはコレ
│  └WEB-INF
│     web.xml  ↑ここまでCVS管理対象
└target         ↓ここから管理対象外(mvn cleanすると消える)
 ├classes
 └mysample    ←tomcatには <context> でこのディレクトリを見せている
  │index.jsp   ←tomcatが見ているのはコレ
  ├META-INF
  └WEB-INF
   │ web.xml
   :


314 名前:313 mailto:sage [2007/11/01(木) 22:00:54 ]
(↑のつづき)

*.java を修正したときはコンパイルするため mvn しなければいけないのはわかりますが、
jsp をいじるたびに mvn するのは面倒です。
ant のときは以下のようなディレクトリ構成にしていて、jsp を修正してもantすることなく
ブラウザをリロードしていました。

{mysample}
│build.xml
├src
│├jp.co....
││ *.java
 └mysample    ←tomcatには <context> でこのディレクトリを見せている
   │index.jsp  ←エディタでいじるのもtomcatが見ているのもコレ
   └WEB-INF
    │ web.xml   ↑ここまでCVS管理対象
    └classes    ↓ここから管理対象外(ant cleanすると消える)

私の使い方が悪いのでしょうか(みなさんはどうやっているのですか?)


315 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 00:08:52 ]
pom.xmlにeclipseプラグインの設定書いて
mvn eclipse:eclipseしてWTPでやってる。

316 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 00:24:47 ]
>>313
良く解らないんだが、開発環境はテキストエディタなのか?
もし、そうであるならば、毎回mvnも仕方ない気もする

実際には開発はEclipse等のIDEを使用する場合が多い
なんで、target以下はぶっちゃけ無視する
コンパイル場所は合わせておいてもいいかな、程度。

target以下はあくまでデプロイとかを行う時にだけ使う
デイリービルドとかやっているならば、サーバーでは使うけど各開発マシンじゃ使わなくて問題なしということ

317 名前:313 mailto:sage [2007/11/02(金) 16:22:46 ]
レスどうもありがとうございます。
テキストエディタ(Emacs) + コマンドラインでやっています。
その場合は、やはり mvn しないといけないということですね。わかりました。

Eclipse は 3.1.x のころまでは Tomcatプラグインのころに使ったり、
いまでも開発というよりはリモートデバッグでソースを追いかけるときに使うぐらいで、
WTP は使ったことがないのですが、

> mvn eclipse:eclipseしてWTPでやってる。

> 実際には開発はEclipse等のIDEを使用する場合が多い
> なんで、target以下はぶっちゃけ無視する

Eclipse を使っていようといまいと、Tomcat は target 以下をみていると思うのですが、
WTPとかで↑のようなことができるのですか?

> コンパイル場所は合わせておいてもいいかな、程度。
> target以下はあくまでデプロイとかを行う時にだけ使う

デプロイせずにローカルでTomcatを動かして開発している場合、>>316 さんは
jsp をどこに配置しているのですか(Tomcatにはどこを見せているのですか?)


318 名前:313 mailto:sage [2007/11/02(金) 16:45:38 ]
書いていて >>313-314 のハイブリッド案を思いついた。
{mysample}
│pom.xml
│build.xml
├src
│└main
│ ├java
│ ├resources
│ └webapp   ←★Tomcatにはここ以下を<context>で見せる
│  │index.jsp ←エディタでいじるのはコレ
│  └WEB-INF
│   │ web.xml   ↑ここまでCVS管理対象
|   ├ lib     ←libは mvn dependency:copy-dependencies で吐かせたものを突っ込んでおく
│   └classes    ↓ここから管理対象外
|            ★build.xml でのコンパイル先やEclipseの *.javaのコンパイル先はここにする。
|            ant clean するとここ以下を消す。
└target       
 ├classes
 └mysample
  │index.jsp
  ├META-INF
  └WEB-INF
   │ web.xml
   :


319 名前:313 mailto:sage [2007/11/02(金) 16:47:10 ]
(↑のつつき 連投すみません)

こうすれば CVS などで管理するソースツリーは変える必要はないし、
target以下は無視できる。デプロイするときだけ、mvn package で target 以下に作成される
warを持っていけばいいか。

Apache ServiceMix などは専用の maven プラグインを使って xml から ESB プログラムを自動生成させる
ビルドプロセスになっているので maven は必須です(専用プラグインのなかでビルドプロセスを隠蔽している)

しかし web アプリぐらいのようにビルドプロセスに特別な maven プラグインが必要ない場合は、
maven はリリース担当ぐらいが使えばよくて、チームには maven を持ち込まなくてもいい気がしてきた。
ソースツリーは maven 形式にしておいたままでいいけど


320 名前:デフォルトの名無しさん mailto:sage [2007/11/02(金) 17:07:07 ]
>>317
> > mvn eclipse:eclipseしてWTPでやってる。
> Eclipse を使っていようといまいと、Tomcat は target 以下をみていると思うのですが、
> WTPとかで↑のようなことができるのですか?

WTPだとtomcatはsrc/main/webappsをルートとして見る。
だからHTMLやJSPは直し放題。

classesはどうなってんのかというと、クラスパスとして
target/classesが登録される。
webapps/WEB-INFの下に作る必要がない。

で、Eclipse上でのビルド先がtarget/classesになってるので
ちゃんと最新の状態のclassファイルを見てくれる。

やってみれば早いよ。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<134KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef