AntからMavenに変えて感じたこと
今更なのですが、AntからMavenに変えて良かったこと、悪かったことを書いていきます。
気づいたことがあれば、追加していこうかと(‘ω’)
Mavenに変えて良かったこと
まとめると以下のことを感じています。
- jarファイルの追加が簡単。
- 依存関係のあるjarファイルを集めなくていい。
- ブランチの切り替えがしやすい。
- Docker Hubに公式がある。
1. jarファイルの追加が簡単。
他のサイトとかにもよく書いてますが、
pom.xmlに必要なjarファイルを記載すると勝手に落としてくれます。
jarファイルをダウンロードしてこなくていいので
簡単ですね。
そして、AntだとEclipseなどでJarのバージョンアップなどでブランチを切り替えたりすると、たまにjarファイルをロックして切り替えに失敗したりします。
Mavenだとないのでこういうのものいいですね。
2. 依存関係のあるjarファイルを集めなくていい。
「1.」とかぶっていますが、 やはり依存関係を勝手に解決してくれるのは最高ですね。
Antの時は、依存関係を調べてjarファイルをダウンロード
もしくはビルドして作る必要があったので本当に楽。
3. ブランチの切り替えがしやすい。
これは他ではあまり書いてないかも。
Eclipse loveなのですが、
jarファイルもAntだとEclipseの中に取り込んでいます。
そのためブランチを切り替えるときにjarのバージョンを変えてたりすると
なぜかjarファイルをEclipseがつかんでしまって消せなかったりしました。
解決には1回Eclipseを落として、ファイルシステムから
削除する必要があり、一度発生するとかなりめんどくさかったです( ;∀;)
4. Docker Hubに公式がある。
Dockerでビルドして、イメージを作ろうとしたのですが
Antだとどうも公式がなさそう。
自分で作るか、誰か作ってくれたのを使えばよいのですが
やはり公式があると安心しますね(#^^#)
Mavenに変えて悪かったこと
こちらも、まとめると以下のことを感じています。
メリットに比べると大したことがない気がする。
- (自動)ビルドが遅い?
- pom.xmlや設定が難しい。
- フォルダ構成が変わったので最初とっつきにくかった。
- 独自jarの追加が少し面倒。
1. (自動)ビルドが遅い?
Eclipseでも起動が少し遅いような。気のせいかな?
サーバへの自動ビルドやデプロイだと、
Antだとリポジトリに全部梱包されているので
jarファイルを集めなくてよいですが、
Mavenだと集めるとこから始まるので待ち時間が長くなりますね。。
キャッシュとか使えば解決できるのかな?
2. pom.xmlや設定が難しい。
EclipseのGUIにより設定しやすくはなっていますが、
やはりXMLなので少し難しいですね。
ネットにいっぱい情報はあるので、調べれば何とかなります。
ですが、XMLなので少し見づらいですね。
やっぱりGroovyでかけるGradleのほうがいいのかな?
3. フォルダ構成が変わったので最初とっつきにくかった。
なれればなんてことはないのですが、
Mavenではフォルダ構成を指定通りに書くと
勝手に認識してくれるというメリットがあります。
しかし、私のようにAntを使って長年独自フォルダで
やってきた古い人にとっては
最初とっつきにくかったですw
4. 独自jarの追加が少し面倒。
Antのときは独自jarとか公開されているjarとか
関係なくlibフォルダに突っ込んでいたので意識する必要がありませんでした。
しかし、Mavneでは独自jarは<scope>system</scope>
で
ローカルファイルとして読み込みます。
少しだけ書くことが多くなるのかな?
まとめ
使って感じたのはメリットのほうがデメリットより
やはり大きい気がします。
Docker HubにもAntの公式はなさそうですし Antは卒業しないとですねww
でも今はGradle
の方が主流なのかな?
確かにXMLより分かりやすい気がする。
Gradle
にしたほうがいいですかねw
作成日:2021-05-30 更新日:2022-01-18