おおくまねこ

職業プログラマーです。興味のある話題を書いています。

2021-01-01から1年間の記事一覧

SpringBoot/Gradleのlogback脆弱性更新したときの方法

はじめに log4j2 の脆弱性 が2021年12月10日に報告され、 任意のプログラムを実行できる危険性があるため、早急に対応することが必要という事で話題になりました。 logback にも「同じ脆弱性の懸念がある」という報告が12月14日におこなわれました。 https:/…

Java /Gradle shadow プラグインの力で fat Jar を簡単に作る

はじめに 動機 環境 fat Jar について fat Jar を作る選択肢 Gradlew にshadow プラグインを使う すること build.gradle の編集 fat Jar 生成 動作確認 最後に はじめに 動機 今はあまりなくなってしまいましたが、Java のプログラムを fat Jar として作って…

scala-steward を個人レポジトリの GitHub Actions で動作させられた記録

はじめに scala-steward とは モチベーション なぜ scala-steward か GitHub Actions で動かす理由 設定方法 前提条件 設定に必要なこと 設定手順 GitHub App を生成 GitHub App の秘密鍵を生成 scala-steward 実行用レポジトリを生成 secret の設定 GitHub …

Scala/sbt で設定した依存関係がコンフリクトしてしまったら

概要 Scala/sbt を使っていて、依存関係で追加したライブラリ間で依存関係が衝突してしまったときにどうすればいいかという内容です。 Java/gradle だと自動的に新しいバージョンを使うようしてくれていたのですが、どうも sbt ではそうはいかないらしいとい…

sbt1.4系からsbt1.5系に移行したいけどうまくいかなかったあなたへ

はじめに Scala のビルドツール sbt のバージョンアップをするときに途方にくれていたのですが、 実は結構簡単にできる方法があると教えてもらったので、その時のことを記録しています。 特に 1.4 系から 1.5 系に移行するときに大幅な変更があり、その差分…

Gradle で Java のユニットテストを1つのクラス、1つのテストだけ実行する方法

内容 備忘録としての内容です。 Javaで開発している際、ユニットテストを実装して動作確認すると思います。 普段は IDE でテストの実行をすると思いますが、その際はテストの実行を選択すれば自動的に設定して、実際に実行したい単位でテスト実行することが…

IntelliJ で Java のビルド時にバージョン関係ではまった時に確認する箇所

概要 小ネタ系 Intellij でJava の開発をしていて、ビルド時にエラーになってしまう、 特にコードの構文が合っているのにエラーになってしまう場合に、 どこをどのように確認・修正するばいいのかについてまとめてみました。 自分は Java17 の preview 機能…

SpringBoot でログレベルを変更する

概要 SpringBoot でログレベルを変える方法について記載します。 記載した経緯 以下の理由からまとめてみようと思っています。 ログレベルの設定変更について、何度か説明機会があったこと やること自体は複雑ではないため ログレベルを変更するユースケース…

Intellij IDEA で複数画面を開いているときにキーボードショートカットでウィンドウ切り替えしたい

Intellij IDEA で複数画面を開いているときにキーボードショートカットでウィンドウ切り替えしたい IntelliJ IDEA で複数画面開いているときに、キーボードの入力からのショートカットコマンドで画面切り替えしたい場合どうすればよいかという話です。 Intel…

mockito でコンストラクターの mock を使ったテストをしたい

はじめに 今回は「mockito を使ったコンストラクターを mock 化する方法」について記載します。 Java でユニットテストを記述する際に利用するモックライブラリ mockito の使い方のひとつの説明です。 以前、以下で「mockito を使った static メソッドを moc…

Slack のチャンネルにメッセージを送信するために Incoming Webhook を使って送信する

はじめに 概要 Slack にメッセージを送信するため、コマンドラインの curl やプログラムから HTTPリクエストをよるAPIを用いた投稿をする方法がありますが、 そのやり方をいつも忘れてしまうので履歴として残しています。 Slack API にリクエストするアプリ…

docker-compose と docker サブコマンドの compose って結局どっち使えばいいのかという話

始めに 書いていること Docker 管理する方法に Docker Compose を使う方法があります。 その実行する時のコマンドが複数あり、「結局どっちを使うといいのか?」、「何が違うのか?」というのが意外と情報としてないらしいので、ブログにまとめてみようと思…

AWS EC2 インスタンス上で tcp 接続できる Docker を構築する

はじめに リモートのサーバー上で起動する Docker にローカル環境のIDEなどから接続できる環境が欲しく、 AWS ec2 インスタンス上で作ってしまおうというのが事の発端です。 正確には、リモートで接続できる環境を作るためのIDEからの接続確認できる環境をつ…

mockito で static メソッドの mock を使ったテストをしたい

はじめに お久しぶりです。 最近、いろいろバタバタしていてここの更新もすすんでませんでしたが、 アウトプットの機会を継続できたらと思い、また何か書いていこうとしています。 4月に異動になってしまい、Java を使わない部署になったのに、なぜかスポッ…

Intellij IDEA で Cannot load infomation for github.com/アカウント名: Request response: Bad credentials が出る時の対処方法

概要 IntelliJ IDEA を使っている際、「Share Project On GitHub」を選択したときに以下のエラーがでる時があります。 「Cannot load infomation for github.com/アカウント名: Request response: Bad credentials」 これの原因と対処方法について記載します…

IntelliJ IDEA でつくったローカルプロジェクトを GitHub 連携

IntelliJ IDEA で GitHub 連携する 最初に IntelliJ IDEAを使って GitHub 連携について説明します。 仕事やそれ以外でも連携方法について説明したりする場面があるのですが、 せっかくなのでまとめておこうと思って記載しています。 Android Studio とかでも…

Scala/Sbt の依存ライブラリ追加でパッケージが見つからないときにリゾルバーを追加したい

背景 Scala/Sbt を使ってプログラミングを開発しているとき、 ライブラリやプラグインを追加する際に「パッケージが見つからない」という場合があります。 パッケージ名まで書くと scalatyped.converter を sbt plugin として入れたかったのですが、見つから…

Scala/Sbt の依存ライブラリ追加でパッケージが見つからないときにリゾルバーを追加したい

背景 Scala/Sbt を使ってプログラミングを開発しているとき、 ライブラリやプラグインを追加する際に「パッケージが見つからない」という場合があります。 パッケージ名まで書くと scalatyped.converter を sbt plugin として入れたかったのですが、見つから…

SpringBoot で設定ファイルの値を Class に設定したい

背景 SpringBoot を使って、設定ファイルに値を入れて扱いたい場合が多く、 やり方を残しておきたいので記述します。 以下のような場合には、設定ファイルに切り出しておく方がよいかなと思っています。 URLやタイムアウト値などの頻繁に書き換える可能性の…