maven

JUnit5 を IntelliJ IDEA から実行できない #IntelliJIDEA

TL;DR Maven のプロジェクトに JUnit5 の依存を追加した コマンドラインからは通るが、 IntelliJ IDEA からの実行がエラーになる junit-platform-launcher を依存に追加したら実行できるようになった 環境 openjdk 12.0.1 IntelliJ IDEA 2019.3.2 詳細 公式…

Mavenで実行するテストをIDEAでデバッグする #Maven #IntelliJ

概要 IntteliJ IDEAで、Mavenプロジェクトのtestフェーズをデバッグ実行した場合に、ブレークポイントで止まってくれない(ステップ実行ができない)現象に遭遇した。 Mavenはデフォルトだとテストが別の(forkした)プロセスで実行されるため、IDEAがテストの…

Maven Assembly Pluginを使って、特定のリソースをjar形式で配布する #Maven

概要 DDLなどのリソースがアプリケーションとリポジトリ(プロダクト)が別で管理されている場合に、別プロジェクトからそのリソースを参照したい場合があると思います。 例えば、UnitTest等の利用等が考えられます。 二重管理を避けるために、jar形式でリソ…

すでに存在するデータベースにFlywayを適用する(その2) #flyway

概要 下記記事の続き。 今度はbaselineの設定を活用して、SQLとFlywayの足並みを調整する。 su-kun1899.hatenablog.com テスト用のデータベースを作る create database if not exists flyway_sample character set utf8 flyway管理外のテーブルを追加する my…

すでに存在するデータベースにFlywayを適用する #flyway

概要 Baselineを使って、MySQL+Mavenで、FlywayによるDB構成管理を既に存在するデータベースに適用する。 Flyway by Boxfuse • Database Migrations Made Easy. テスト用のデータベースを作る create database if not exists flyway_sample character set ut…

SonarQubeを使ってみた #sonarqube

概要 Javaで作ってるリポジトリにSonarQubeを適用してみました。 SonarQubeとは? SonarQubeは、ソースコードの静的解析ツールです。 www.sonarqube.org 今回はオープンソースであれば無料で使えるSonarQube.comを利用します。 about.sonarqube.com アカウン…

CircleCIでjacocoのカバレッジレポートをとる #circleCi #jacoco #java

概要 SpringBoot + Spock + maven で開発をしているんだけれど、せっかくテストも書いているのでカバレッジレポートをCI時に取得するようにする。 pom.xmlにjacocoプラグインを追加 ... <build> ... <plugins> ... <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.7.9</version> <executions> <execution> <id>prepare-agent</id> </execution></executions></plugin></plugins></build>

flywayで差し込みバージョンを適用する #flyway

こんな感じの時、間に差し込みバージョンを作る。 +------------+-----------------+---------------------+---------+ | Version | Description | Installed on | State | +------------+-----------------+---------------------+---------+ | 1.0 | init …

Mavenで特定のクラスのテストだけ実行する #maven #java

特定のテストだけ mvn test -Dtest=red.sukun1899.SampleSpec クラス名が一意になるなら、パッケージは省略できる mvn test -Dtest=SampleSpec 複数の場合はカンマでつなぐ mvn test -Dtest=HogeSpec,FugaSpec 特定のメソッドだけ実行する場合シャープでつな…

Mavenでコマンドライン引数を渡す

run.argumentsプロパティで渡してあげるとよい。 Sample: ./mvnw spring-boot:run -Drun.arguments="arg1, arg2" 参考 stackoverflow.com