Java - MiracleSky/github GitHub Wiki
Eclpse
Gradle
エラー
エラー: 17は無効なソース・リリースです
EclipseでJava17を選択し、SpringBootプロジェクトを作成。 Gradleタスクから build を実行するとエラーになる。 原因は Eclipse の設定で Gradle のJavaホームが Java11に設定されているから。
ビルドバージョンを表示する
Spring Boot / Gradleプロジェクトでプロジェクトのバージョン/Gitのコミットハッシュ/ビルド日時をアプリケーション内で表示する https://yusuke.blog/2022/04/03/3249
サンプルでは IndexController クラスを利用しているが、 おそらくControllerAdviceとかで横断すればすべての画面にバージョン表示することも可能。
また、build.gradle で gitの情報も表示するようにしているが、git未使用の場合はこの部分を削除すれば問題なく動作する。
あくまで jar 内のclassの情報を参照しているので、開発環境では確認出来ない。(取得処理の結果がnullになる)
イディオム
for文
インデックス利用の従来のループ
for (int i = 0; i < list.size(); i++) {
System.out.println(list.get(i));
}
拡張for文
for (var v : list) {
System.out.println(v);
}
やりたい事が、コレクションの先頭から終端まで順に処理する。という内容であれば、拡張fot文を使うべき。 インデックス利用の場合、拡張for文では登場しない変数 i を使うことにより、コードが煩雑になり、バグの温床となる。 仮にインデックス変数の指定ミスがあったとしてもコンパイラは気付いてくれないし、実行時に初めてエラーとなる。
また、Intelli J などの一部のIDEではこの辺りも非推奨とマーカーを出してくれる模様。