[表示 : 全て 最新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/

241 名前:デフォルトの名無しさん mailto:sage [2007/05/30(水) 14:52:44 ]
>>235
結構致命的な部分で問題抱えたままリリースしてるような。
mvn 単体は良いツールだけど、Eclipse plug-in は不安定と言うか
まだまだ使えない感じがする。

242 名前:デフォルトの名無しさん [2007/05/31(木) 15:36:39 ]
>>241
0.0.10のjarの中覗くとわかるけど、中の人(組み込みmaven)が2.1のスナップショットなんだよね。
0.0.9の中の人は2.0.4のリリース版だったのに。
今のところ安定化はそもそも目指してなさげ。


243 名前:デフォルトの名無しさん mailto:sage [2007/06/01(金) 11:29:30 ]
version も 0.0.x だし仕方ないところかも知れんですね。

ところで普段開発する時、
cvs/svn でのソース管理も並行すると思うんですが
maven のレポジトリに反映させるのってどのタイミングにしてますか?

244 名前:デフォルトの名無しさん [2007/06/01(金) 15:38:12 ]
コミットの度に反映させてる。

コミット→continuumによる自動ビルド&デプロイ→リポジトリ更新

て感じ

245 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 11:55:44 ]
初めてワーニングという言葉を聴いたとき
俺は心の中で大爆笑だったが、皆真面目な顔をしていたのでびっくりした
そんな俺も、今では自然とワーニングと言えるようになった
大人になるってこういうことなんだな、フ

246 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:00:31 ]
常識を身につけたの間違い

247 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:20:09 ]
falseをファルスと連呼している美人がいた
指摘するか迷ったが、やめといた

248 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 12:27:39 ]
FAQを(ry

249 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:10:27 ]
ああそういうこと。
ワーニングってなんかそういう意味あるんですか?



250 名前:デフォルトの名無しさん mailto:sage [2007/07/05(木) 13:52:22 ]
バルス!

251 名前:デフォルトの名無しさん [2007/07/07(土) 00:09:45 ]
ウォーニングでいいの?
フォルスでいいの?

つーか久しぶりの書き込みだと思ったら
こんなくだらねえネタでおまいらときたら

252 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 06:37:10 ]
だって過疎なんだもの

253 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 12:55:57 ]
指している物が伝われば何でもいいだろ
そんな所に拘るのは学生だけ

254 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 20:06:38 ]
ファルスは伝わらねぇだろファルスは。
しかも女にいわれちゃ気が散ってしょうがない。

255 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 23:01:32 ]
ウォーターは実際はワーターだろ。
だからワーニングのほうがそれっぽいかな。
ファルスはないが。

256 名前:デフォルトの名無しさん [2007/07/08(日) 00:45:53 ]
もー。いいじゃん伝われば。

ところでfailureは何て発音すんのかね

257 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 00:52:00 ]
false ふぉるす?
www.excite.co.jp/dictionary/english_japanese/?search=false&match=beginswith&dictionary=NEW_EJJE&block=37667&offset=530

warning ぅぉわにん?
www.excite.co.jp/dictionary/english_japanese/?search=warning&match=beginswith&dictionary=NEW_EJJE&block=44329&offset=526

failure ふぇいりぁ?
www.excite.co.jp/dictionary/english_japanese/?search=failure&match=beginswith&dictionary=NEW_EJJE&block=37649&offset=660

258 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 16:17:24 ]
mavenとeclipseのtomcatプラグイン両方使ってる人っているかね?

maven方式のフォルダ構成にするとsrcとtargetを分けなきゃならず、
HTML書き換えるだけでもmvn installとかやんなきゃダメそうで
不便だなあって思ってんだけど。


259 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 22:17:32 ]
この流れからすると、もしかして、245は
ワーニングって単純にローマ字読みしてて
だせぇとか思って大爆笑してたのか?

俺、えらい勘違いしてたよ。ワーニングって
ファルスみたく別の変な意味があるのかと思った。

245の方が圧倒的にかっこわるいな。



260 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 23:53:24 ]
>>258
maven cookbook
でググれ

261 名前:デフォルトの名無しさん [2007/07/25(水) 21:54:55 ]
質問があります。
以下のようにマルチプロジェクトにしています。

c:\prj\
hoge \
├pom.xml   ←@
├hoge-ws-a
│└ pom.xml
└hoge-ws-b
 └pom.xml

あらたに hoge-client というサブプロジェクトを作るべく、以下を実行しました。

> cd c:\prj\hoge
> mvn archetype:create -DgroupId:hoge -DartifactId:hoge-client

すると c:\prj\hoge の下に hoge-client というディレクトリは出来たのですが、
勝手に@の pom.xml が書き換わってしまいます。
具体的には、@の <modules>の中が、今までは↓のようだったのですが、
<modules>
 <module>hoge-ws-a</module>
 <module>hoge-ws-b</module>
</modules>

最後に以下の行が加えられてしまいました。

 <module>hoge-client</module>


262 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 21:55:27 ]
(>>261の続きです)

これがいやなのですが、どうすればいいでしょうか?
やりたいのは、hoge の下に hoge-client のプロジェクトディレクトリ(とファイルのスケルトン)が
作られればよく、親プロジェクトの pom.xml(@)は編集してほしくない。

maven の思想とは違うのかもしれませんが、やり方があれば教えてください。


263 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 08:36:29 ]
>>261

pom.xmlの無い別のディレクトリで作ってから
プロジェクトディレクトリごとコピーすればいいんじゃね?

264 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 10:12:42 ]
そこまでするなら
親pom.xmlを手で編集すれ。

265 名前:デフォルトの名無しさん [2007/09/04(火) 20:48:05 ]
Maven2 + Eclipse3.2の環境で
今使える最も素敵なMaven2プラグインって何かありますか?


266 名前:デフォルトの名無しさん mailto:sage [2007/09/04(火) 23:08:34 ]
Maven2のプラグインって言ってもたいした事はやらないし・・・
なにをやりたいの?

267 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 11:13:33 ]
m2eclipseも使ってみたがあまり好きになれなかったので
専らMaven2 Eclipse Pluginをコマンドで使ってる
WTPのパス設定でテスト用ライブラリ等を除外してくれるのが地味に嬉しい

268 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 12:43:36 ]
スタンドアローンのアプリとかライブラリの開発だったら
m2eclipseは手間かからなくていい。

webアプリになると、sysdeoでもWTPでも
ローカルリポジトリがクラスパスに入れるのが難儀で
mvn eclipse:eclipse の方が良かった。

269 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 12:51:35 ]
手間ってなによ?



270 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 12:53:17 ]
WTP2.0 への対応はいつなんかな。
初回だけ wtpversion=1.5 で作って、
以降、wtp 指定なしでどうにかなるけれども。

271 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 14:20:15 ]
m2eclipseはpom.xml更新するたびに
いちいちmvn eclipse:eclipseする手間がなくていい
という意味。

その代わり編集すると(改行入れるだけでも)
リポジトリにつなぎにいってちょっと重たくなる。
設定で切れるんだっけか。

272 名前:デフォルトの名無しさん mailto:sage [2007/09/05(水) 20:22:11 ]
プロジェクトを m2eclipse の管理下には入れないで
mvn のフロントエンドとしてのみ使用してる。

273 名前:デフォルトの名無しさん mailto:sage [2007/09/08(土) 13:00:47 ]
m2eclipse
Maven2 Additional
Mavensier

274 名前:デフォルトの名無しさん mailto:sage [2007/09/15(土) 23:51:46 ]
maven2で特定のファイルをコピーしたいんだが、どのpluginを使えばいいのか分かりません。
具体的には、pom.xmlと同じディレクトリにある、設定ファイルをtarget直下に配置したいので、やり方を教えてください。

275 名前:デフォルトの名無しさん [2007/09/18(火) 15:37:19 ]
m2eclipse 0.11 updated


276 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 11:49:50 ]
>>275
WTPがローカルリポジトリをビルドパスとして認識したぞ。やったー。
前だめだったよね?

277 名前:デフォルトの名無しさん mailto:sage [2007/09/19(水) 17:18:35 ]
うわやっぱだめだー、うまくsrc/main/webappが
WTPのサーバにpublishされない。

結局eclipse:eclipseに戻った。

278 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 21:43:10 ]
遷移依存で複数バージョンの xercesImpl/xml-api が引っ張られて来るんですか
新しいバージョンのみをクラスパスに設定するには、どうやれば良いのでしょうか?

279 名前:デフォルトの名無しさん mailto:sage [2007/09/25(火) 21:56:34 ]
dependncyのexcludeで指定.
とはいえ、それぞれがそれぞれの事情で持ってきているわけだから、組み合わせを変えるほうがいいんじゃね?



280 名前:デフォルトの名無しさん mailto:sage [2007/09/26(水) 15:42:22 ]
回答ありがとうございました。

codehaus の jaxb2-maven-plugin と
spring-xom の期待するバージョンが衝突してるっぽいんですが
どっちも使いたいんで、組み合わせは崩さず、
しばらくこれでやってみる事にします。

281 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 08:46:28 ]
Maven使ってみて感じたのだが、
apache系ライブラリのdependencyの指定かなり適当じゃね?
testやprividedの指定とか全然してないところが多い気がする

282 名前:デフォルトの名無しさん mailto:sage [2007/09/27(木) 22:29:37 ]
適当っていっても、最終的にはドキュメント確認するべきだろう
Mavenで自動的に入ってくれるのは便利だけど頼りすぎちゃダメかと

時にpluginのexecutions の指定がどうもうまくいかない
phaseにpackageと指定しているにも関わらず最初に起動しようとする
この辺解説したページってないかね?

283 名前:デフォルトの名無しさん [2007/09/27(木) 23:08:52 ]
>>282
そのプラグインは何かね

284 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 00:07:34 ]
>>282
assembly:assembly
あと、適当に作った自作プラグインも同じだったが・・・


285 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 00:08:04 ]
>>283だ、すまん

286 名前:デフォルトの名無しさん mailto:sage [2007/09/28(金) 15:32:10 ]
例えば log4j の 1.2.15 なんかだと
jms や jmxri なんかは provided にして、
log4j を使用するアプリが JMSAppender 使いたかったら
runtime なり test なりで追加するってのが本来の形であってます?

287 名前:デフォルトの名無しさん [2007/09/29(土) 04:03:01 ]
>>284
同じくassemblyプラグイン使っててphaseにpackage指定してるけど
不自然な動作はしてないな。
package、install、deployの実行時、テストの後に動作する。

288 名前:284 mailto:sage [2007/09/29(土) 08:05:33 ]
解決

>>287
どうもmulti-modulesであったことが原因。
Aの下にBとCというmoduleがあるとして、Aのpluginとして登録したわけ。
つまり、BとCのjarをzipにまとめて、という感じ。

ところが、pluginの指定は子moduleに継承(?)される設計になっている
だから子moduleのBとCが実行される段階で意図していないAに設定されたpluginが発動…というのが原因
尚、<execute>の<phese>に指定せず、手動でやればOK。  

289 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 21:52:04 ]
>>282
>適当っていっても、最終的にはドキュメント確認するべきだろう
>Mavenで自動的に入ってくれるのは便利だけど頼りすぎちゃダメかと

それじゃ、他の言語のライブラリ管理ツールに比べて不便すぎない?
Mavenがそれだけの為のツールじゃないことは承知だが、
せっかくこれだけMavenリポジトリの資産が増えたのだから、もう少し使い易くなるように
登録ライブラリ側も、もっと依存ライブラリの指定に気を使って欲しい

>>286
それが本来の形だけど、全部デフォルトで指定しちゃってるライブラリが多すぎるんだよね



290 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 22:48:39 ]
>>289
そう思うならば2chでウダウダ言ってないでコミッタになれよ

291 名前:デフォルトの名無しさん mailto:sage [2007/09/29(土) 23:57:53 ]
>>290
それ逝っちゃ駄目だろw

292 名前:デフォルトの名無しさん mailto:sage [2007/09/30(日) 00:06:25 ]
>>291
いや、そういうことだろw

293 名前:デフォルトの名無しさん mailto:sage [2007/10/01(月) 14:26:36 ]
> 他の言語のライブラリ管理ツールに比べて不便すぎない?
具体例を教えて欲しいのだが。
中央集権でガチに管理しない限り
どっちみちこの手の問題は起きるのでは。

294 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 01:54:44 ]
>>293
いやあなたのいうとおりなんだけど、個人的には>>289に同意だな
依存ライブラリの指定がいい加減すぎるのはホントなんとかしてほしい

295 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 11:28:02 ]
行儀よくリポジトリに登録するための詳しいドキュメントってどこにあるの?

296 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 19:11:43 ]
>>293 だが。
他のって書いてあったから、他にあるなら調べてみたいと思っただけで
別に他意はないんだ。気を悪くしたなら申し訳ない。

登録側がちょっと気を配ってくれたら、利用側ウハウハやのになあ。ほんんとうに。

297 名前:デフォルトの名無しさん mailto:sage [2007/10/03(水) 19:22:07 ]
つか、依存関係でグダグダとなった経験ないんだが、
例えばどんな組み合わせで問題が起きるんだ?

298 名前:デフォルトの名無しさん mailto:sage [2007/10/04(木) 19:49:31 ]
280 は俺の書き込みだけど

jaxb2-maven-plugin を使って、XML Schema → Java クラスの自動生成をした。
そのクラスを使うサービスを作成した(ロジックから下のみ)。
そのサービスロジックを WebService にした。(spring-ws を使用)
war をデプロイしたところ xalan がそんなメソッドはねえと言う。
WEB-INF/lib を眺めたら xercesImpl が複数存在していた。

こんな感じ。
(なお、プラグインを新しくしたら解消された。)

大抵のライブラリは上位互換保つけど、そうじゃないライブラリを
推移的依存で複数引っ張ってきたら楽しいことになると思う。

299 名前:デフォルトの名無しさん [2007/10/10(水) 18:51:06 ]
質問が3つあります。

○1.
iBatis の最新の jar (2.3.系)を自分のローカルリポジトリに追加したいのですが、
ibatis.apache.org から ibatis の jar を落っことしてきて、mvn install:install-file で手動で追加するしかないのでしょうか?

www.ibiblio.org/maven/com.ibatis/jars/ をブラウザで直接見ると、2年前の 2.1 までしかおいてない。
people.apache.org/repo/ 以下を、ブラウザでずっとあさってみても、iBatis がおいてない。

○2.
SpringFramework 2系も同様で、 これも www.springframework.org から jar を落として直接追加でしょうか?
www.ibiblio.org/maven/org.springframework/jars/ を直接ブラウザで見ると、Spring 1.x の jar しかない。

○3
自分の使い方がわかってないだけかもしれませんが、自分の場合、プロジェクトにライブラリの jar を追加する場合、
まず希望するライブラリ、バージョンの jar が maven リポジトリに登録されているかどうか確認します。
そのときに、上記の ibiblio.org や people.apache.org/repo/ 以下をブラウザで直接漁っているのですが、
ほかにここもみておけというところはありますか? というかみなさんどうしているのでしょうか?



300 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 19:13:00 ]
mvnrepository.com/

301 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 20:17:05 ]
最初に見に行くべき場所がそもそも違うんじゃなかろうか。
セントラルレポジトリは repo1.maven.org/maven2/ っすよ。

repo1.maven.org/maven2/org/apache/ibatis/ibatis-sqlmap/2.3.0/
ibatis 使ってないから分からないけど、これ?
com.ibatis/ibatis2-* から org.apache.ibatis/iabatis-* に変わってる模様。

最近はセントラルレポジトリの更新でほぼ満足できるのでは。
spring も最新の 2.0.7 が置いてあるし。
(repo1.maven.org/maven2/org/springframework/spring/2.0.7/)

302 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 20:28:02 ]
追記

>みなさんどうしているのでしょうか?
1. セントラルレポジトリを徘徊する。
2. プロジェクトで言及してないかを確認する。
3. Maven で管理してるプロジェクトで、目的のライブラリを使ってないか期待する。
 (spring のソース落としてきて、pom.xml に grep かけるとか。)
4. 諦めて install:install-file する。

実際には 1. でダメだったら 4. で良いと思われ。
2., 3. の方法だと pom.xml のメンテナンスが面倒になるし。
(4. ならプロジェクトでこうするって決めてしまえば終了。)

303 名前:デフォルトの名無しさん mailto:sage [2007/10/10(水) 21:07:08 ]
ローカルサーバにリポジトリ立てる作業は、ほぼ必須と思われ

304 名前:デフォルトの名無しさん mailto:sage [2007/10/11(木) 16:18:45 ]
みなさんレスどうもありがとうございます。
だいたい状況がわかってきました。

>>301
> セントラルレポジトリは repo1.maven.org/maven2/ っすよ。

ああ、そうでした! 以前の自分の日記見たら、このURLメモってた。
今後はここをまず見に行くことにします。たしかにメジャーなものはそろってますね。
maven もデフォルトでここを見に行くはずですから、昨日作業していたときは、
spring-ibatis 2.0.6 の jar は取って来れていたのを思い出した。

今回の spring と ibatis ですが、以下の顛末でした。
・今回必要なのは spring 2.0.6。自分のプロジェクトの pom.xml の dependency に
 spring-ibatis 2.0.6 と書いておいたら、spring 関係は何もせずに
 ダウンロードされたが、ibatis の 2.3.0 が依存していて、それが見つけられなかったよう。
repo1.maven.org/maven2/org/springframework/spring-ibatis/2.0.6/spring-ibatis-2.0.6.pom をみると、
 com.ibatis/ibatis2 という名前で依存していたが、 >>301 のように ibatis の名前が変わっていて、
 セントラルリポジトリにはこの名前では登録されていないため(org.apache.ibatis/ に変わっていたため)みつからなかった。
 そのため、自分で ibatis の jar を落っことしてきて、ローカルリポジトリに com.ibatis/ibatis2 で
 登録したところ、pom.xml は修正せずにビルドできた。
・ちなみに spring-ibatis 2.0.7 をみると、
 repo1.maven.org/maven2/org/springframework/spring-ibatis/2.0.7/spring-ibatis-2.0.7.pom
 org.apache.ibatis/ibatis という名前で依存しているので、自分の pom.xml で 2.0.7 と書いていたら、
 何事もなくスルっとうまく行っていたと思います。


305 名前:299 mailto:sage [2007/10/11(木) 16:47:18 ]
(名前書き忘れてしまいましたが、>>304 も自分です)

>>302-303
みなさんもやはりリポジトリは徘徊するのですね。今後、1.と4.でやってみます。
2.は、apache の incubator 系とか codehaus とかがそうですね。

で、プロジェクト全員が install:install-file するのも大変なので、チーム内では
>>303 のようにローカルリポジトリサーバを立てる(そのかわりメンバーは、なるべく自分勝手にダウンロードしてこない)
ここは自分のチームでもやっていますが、maven でチーム開発するには必須のノウハウということですね。

自分のあやふやなところが整理できました。どうもありがとうございました。

>>300
すげー!! いろいろそろってますね!
ここ自身ではリポジトリを持っているわけではなく、ここで検索したり情報を見て、
最後にリポジトリへリンクするという使い方かな。

306 名前:デフォルトの名無しさん [2007/10/18(木) 16:59:25 ]
ant では、-emacs オプションがあったり -find build.xml で、build.xml を見つけるまで
上のディレクトリに登って探してくれるけど、mvn にはそういうオプションはないのでしょうか?

mvn -f しても、pom.xml 以外のファイル名を指定することはできましたが、ディレクトリは上ってくれませんでした。

307 名前:デフォルトの名無しさん mailto:sage [2007/10/20(土) 07:12:37 ]
勝手に意図しないpomを実行されても困るんだが・・・

308 名前:デフォルトの名無しさん mailto:sage [2007/10/21(日) 03:59:24 ]
-find build.xml はいいのか。

309 名前:デフォルトの名無しさん mailto:sage [2007/10/22(月) 10:59:13 ]
勝手に意図しない build.xml を実行されても困るだろ



310 名前:デフォルトの名無しさん [2007/10/28(日) 09:32:58 ]
すみません。
1.maven2で jarファイルを作成する際にソースコードを含めることはできますでしょうか?
 maven-source-plugin を使って ソースコードのみの jarファイルは作成出来たのですが…

2.もしくはmaven-souce-pluginで作成した xxx-1.0.1-sources.jar を war:inplaceなどで取り込む方法はあるのでしょうか?
 dependencyタグ内で <version>1.0.1-sources</version> なんて書いても駄目でした ><
知っている方いらっしゃいましたら、教えてください
よろしくお願いします。

311 名前:デフォルトの名無しさん mailto:sage [2007/10/28(日) 09:40:58 ]
>>310
自分の知っている方法だと、assemblyプラグインを使う方法。
これを使えばzipだろうとwarだろうと、好きな形でパッケージングできる。
大雑把な手順としては、
1. コンパイルする(jar等を作成)
2. 必要なファイルを作業ディレクトリにコピー
3. assemblyプラグインでzipを作成

他にも方法はあるかもしれないけど、原始的な方法はこんな感じだと。

312 名前:310 [2007/10/28(日) 16:33:54 ]
>>311
ありがとうございます><
早速試してみます!!!

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ファイルを見てくれる。

やってみれば早いよ。


321 名前:316 mailto:sage [2007/11/03(土) 00:26:27 ]
レスだけ
>317
テキストエディタじゃ開発してないからIDEの設定にあわせる
どうしてもテキストエディタで開発しなくてはならないならば、MavenかAntでデプロイを行うかな
もしくはTomcatのフォルダをJSP直接編集すると思う。

どちらにせよ、今のご時世でテキストエディタで開発しなきゃいけない事をどうにかするなぁ。
IDE嫌いって人もいるけどほとんどの人はIDEの方が効率上がるわけで、あわせるべきだと思うし

322 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 03:22:02 ]
IDEは当然Maven使わない前提で作られてるからな。
当たり前だけど。

323 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 05:06:49 ]
>>321
テキストエディタと言っても>>317が使ってるのはEmacsだから
IDEの方が上とは一概に言えないと思うよ
Railsだとエディタによる開発が主流だし、V2C作ってる人もEmacsだし
EclipseはMavenとの相性が決していいとは言えないし
エディタ+Mavenの組合せも少人数開発ならアリだと思う

324 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 05:14:50 ]
エディタでやるなら、
tomcat起動時にクラスパスに
target/classesと、ローカルリポジトリの各jarを
指定して、コンテキストルートを
src/main/webappにすりゃ
WTPと同じ事が出来る、と思う。

jarが多いと大変だ。
なんかwebコンテナを起動する
Mavenプラグインあったような記憶があるなあ。

325 名前:321 mailto:sage [2007/11/03(土) 11:00:40 ]
誤解される書き方だった

>>323
emacs < IDE って事を言いたかったわけじゃないよ
>322も書いているようにMavenはIDE前提な感じもする
それにデプロイをどうするかってMavenの問題じゃなくてAntでも同じ問題が発生するじゃん。
emacsは詳しくはないけど、WTPと同じような機能を追加できればそれがベストじゃないかね

326 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 11:37:41 ]
jettyプラグイン使えばいいんじゃねーかなー

327 名前:デフォルトの名無しさん mailto:sage [2007/11/03(土) 11:53:28 ]
ずれすぎ。

328 名前:313 mailto:sage [2007/11/05(月) 10:59:50 ]
遅くなりましたがレスどうもありがとうございます。

>>320
WTPだとそんなことができるのですか。
↓の本を見つけたのでとりあえずぽちって来ました。
時代遅れにならないよう勉強してみます。

www.shuwasystem.co.jp/cgi-bin/detail.cgi?isbn=978-4-7980-1775-4

>>324
なるほど、私のハイブリッド案と逆のアプローチですね。
とりあえず >>318 で数日やってみていますが、参考にしてみます。

329 名前:デフォルトの名無しさん mailto:sage [2007/11/05(月) 11:49:45 ]
>>328
クラスパスの設定とかコンテキストルートの設定は
mvn eclipse:eclipseで全部やってくれるから
この事に関してはWTPの本を読んでも
あまり役に立たないと思うけどなあ。

あまり勉強しなくてもすぐ始められるよ。



330 名前:デフォルトの名無しさん [2007/11/08(木) 00:31:00 ]
JUnit4はまだ使えないの?

331 名前:デフォルトの名無しさん [2007/11/09(金) 15:31:57 ]
JUnit4はEclipseで使えるからおれはいいやと思っている。

Mavenでやる必要性は低いのでは。

どうしてもやりたければMavenのプラグインでも探すか作るかするしかないのではと

332 名前:デフォルトの名無しさん [2007/11/09(金) 15:33:01 ]
>>322 名前:デフォルトの名無しさん :2007/11/03(土) 03:22:02
IDEは当然Maven使わない前提で作られてるからな。
当たり前だけど。

333 名前:デフォルトの名無しさん [2007/11/11(日) 01:09:35 ]
それこぴぺしてどうすんだ

334 名前:HemlockDKiller=HORSEFUCKER!! [2007/11/12(月) 06:55:55 ]
HemlockDKiller=HORSEFUCKER!!
Hi! I am Horsefucker!
I am stupid Korean.
I live in Tokushima in Japan.
I love YMO.
I love YOUTUBE
I am foolish, unfair, and a coward.
Please Fuck me!


335 名前:デフォルトの名無しさん [2007/11/12(月) 21:50:02 ]
>>331
それじゃMaven使うウマミが無いだろ。

336 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 22:42:33 ]
Mavenを採用する理由って何?
Antがボトムアップアプローチで、Mavenがトップダウンアプローチ
ってのは聞くんだけど、それじゃAntから乗り換えるのにピンと来ない。

337 名前:デフォルトの名無しさん mailto:sage [2007/11/12(月) 23:22:52 ]
依存してるライブラリを自動的にネットから落としてくる>Maven

338 名前:デフォルトの名無しさん mailto:sage [2007/11/13(火) 00:08:28 ]
ディレクトリ構成が標準化されてる
build.xml書かなくて良い

339 名前:299、313 mailto:sage [2007/11/13(火) 01:20:05 ]
>>336

私の場合、Maven を使うときはトップダウンというか as is (あるべき姿)を先に描いてから、
Maven がどんなディレクトリ構成になるか、どんなプラグインが走ることでビルドされるかを
おっかけて、ant か maven かを選定するので、一度トップに行ってから結局ボトムアップになっている気がする。

Oracle で DB つくるとき、GUIツールで設定するけど、最後に「実行」を押さずにスクリプトを吐かせて、
結局は sqlplus でコマンドラインでやる、見たいな。
ただ、何事も内部で何が起こっているかを把握するのは大事なので、こういう手順になっているのは悪いことではないと思っている。

> それじゃAntから乗り換えるのにピンと来ない。

>337-338 の言っている事は、なれると便利。
いまは dependency を書いて jar 勝手に取ってこさせているし
(dependency を書くまで、maven リポジトリの中を漁ってほしいjarがあるかどうか調べるのは必須だけど)、
maven を使っているプロジェクト、OSS は必然的にディレクトリ構成が決まるから、ソースを追いかけるときはわかりやすい。

あとweb アプリぐらいだと ant も maven も変わらないけど、
一部のOSS プロダクトは、一緒にリリースしている maven プラグインを使うことでビルドプロセスを簡略化(隠蔽化)している場合がある。
アノテーションが付与された *.java からコンテナが見る xml を自動生成したり、
xml を開発者が書くと、必要なプロキシーオブジェクトを自動生成したり。

そういうOSSを使うときは maven プラグインは便利だし、むしろそれを使わないとビルドできない場合がある。

ant か maven かの区分けは、こういった OSS を使うかどうかもひとつではないでしょうか。




340 名前:299、313 mailto:sage [2007/11/13(火) 21:49:44 ]
Struts 1.3.8 を使ったプログラムを作っていて、pom.xml の dependency を以下のように書いていました。

<dependency>
 <groupId>org.apache.struts</groupId>
 <artifactId>struts-core</artifactId>
 <version>1.3.8</version>
</dependency>

Spring も使いたくなったので dependency に以下を足したのですが、

<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-core</artifactId>
 <version>2.0.7</version>
</dependency>
<dependency>
 <groupId>org.springframework</groupId>
 <artifactId>spring-struts</artifactId>
 <version>2.0.7</version>
</dependency>

この状態で mvn package すると、target/{アプリ名}/WEB-INF/lib に
struts-1.2.9.jar も含まれてしまいます。
確かに↓をみると、struts/struts-1.2.9.jar に依存しているのですが、
repo1.maven.org/maven2/org/springframework/spring-struts/2.0.7/spring-struts-2.0.7.pom
同じプログラム内に異なるバージョンの struts の jar を含めたくはありません。
こういうときはどうすればいいでしょうか?


341 名前:299、313 mailto:sage [2007/11/13(火) 21:50:04 ]
すみません、>>340 の続きです。

repo1.maven.org/maven2/ を漁ると ただの spring というのもあって、こちらは
依存する jar(struts から hibernate から ibatis から関連するものすべて)がすべて dependency に書かれているのだけど、
repo1.maven.org/maven2/org/springframework/spring/2.0.7/spring-2.0.7.pom
ほとんどが <optional>true</optional>になっていて、
これを pom.xml に指定して mvn すると、true になっているものは package に含まれないようです。
spring はこれを使って、spring 本体が依存する aopalliance-1.0.jar などは
自分の pom.xml に書いて、自分自身で必要なものをとってくるしかないのかな。






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

前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