20日目 artifactの設定(ついでにProject Structure )
Settingsの話は3回もやりましたが,Project Structureの話をしてませんでしたね。正直,面倒なので,昔に書いたエントリーやIntelliJ本体のヘルプを参照してください(だんだんやる気がなくなってる。
→ 初めてIntelliJに触れる人へ − プロジェクトの設定とかテスト実行の話
IntelliJのバージョンがあがるたびに設定画面もびみょうに変わってますが,まあ何とか読み替えられると思います。ちょっと補足すると,ライブラリの設定(File->Project Structure->Modules->Dependencies)にあるスコープ(Scope)は,Mavenを知らないと意味がわからないと思います。
設定可能な値と意味は以下の通りです。
- Compile
- 普通はこれです。コンパイルや実行時に参照されます。
- Test
- Runtime
- Provided
NetBeansにも同様の考え方があるので,NetBeansからの移行組はすんなり理解できると思いますが,eclipseにはどうゆうわけか伝統的にこの考えが無いので,はじめは戸惑うかと思います。でも,これを知ってしまうとスコープが無い世界には戻れないと思いますヨ。:-)
あと,ライブラリはMaven Repositoryから直接ダウンロードできます。
→ IntelliJ IDEA 10のEAPが登場したよ
Artifactsの指定
ちょっと脱線が長引いたのでセクション分けて本題に戻ります。IDEA9あたりからプロジェクトごとに成果物を定義できるArtifactsという機能がついきました。設定箇所は,File->Project Structure->Artifacts。
何ができるって「成果物を定義できる」んですが「成果物ってなによ?」と言うと,要するにJarファイルとかWARファイルとかEARファイルとかってアレです。
使い方は,昔書いたこのあたりが参考になると思います。
→ IntelliJ CE用Winstoneプラグイン公開しました
これの良いところは,自分のニーズに応じていくつもの成果物を定義できることです。これで,zipファイルも作れれば,実行モジュールだけではなく,リリースモジュールも作れそうなので,ちょっと残念ではあります(だったら自分でプラグイン作ったら?という話でもありますが。:-P
ps.
チーム開発する場合など,ライブラリや成果物の生成はIDEではなくAntやMavenといったビルドツールに任せるのが望ましいのです。ただ,個人の実験や趣味で作るちょっとしたプロジェクトなどは,IDEで完結できることが多いととても楽なのです。