Java 差分リリース時に注意したいこと

ちょっとした修正をしてリリースする場合、「修正ファイルも1、2ファイルのだから差分リリースでしよう」という事で修正した class ファイルのみリリースした経験がある方も多いのではないでしょうか?また、別案件が並行で開発が進んでおりそれに影響が出ないように差分リリースすることも考えられると思います。そんな差分アップ時に特に注意したい事を2つ上げます。

1. JDK のバージョンが異なる

 ビルドして class ファイルを生成した環境と本番リリースする環境とで JDK のバージョンが異なるケース。この状態でリリースすると正常に動かない可能性大ですね。検証時には問題なかったのにリリースしたらなぜか動かないということに陥るでしょう。事前に JDK のバージョンは揃えておくべきだと思います。

 2. static や final を用いたクラスを修正

 このような静的な修飾子を用いたメソッドやクラスに手を加えた場合、当然ですがそれらを参照している他のクラスについても意識しなければなりません。そうなると参照しているファイルを洗い出しそれらも合わせてリリースするため、結果的にファイルが増えたり、漏れが出てきてしまう可能性もあると思います。このケースの場合は差分アップは行わない方が良いですね。逆に不具合や障害を招いてしまします。

まとめ

差分リリース時に上記の事は最低限注意すべきだと思いますが、個人的には差分リリースはあまりおすすめしません。ちょっとした修正だから差分リリースではなく、常にクリーンな状態でリリースすべきであり、それが簡単に行える環境を作るべきだと思います。1つの解決策として、リリースを自動化しコストを削減することで、敢えて差分リリースする必要もなくなりますしヒューマンエラーも防げると思います。