CLOVER🍀

That was when it all began.

Maven

OWASP Dependency-Check Maven Pluginで、依存ライブラリの脆弱性情報を確認する

これは、なにをしたくて書いたもの? OWASP Dependency-Check Maven Pluginという、依存ライブラリの脆弱性情報を確認できるプラグインがあるということを知りまして。 dependency-check-maven – Usage ちょっと、こちらを試してみようかなと。 OWASP Depend…

Apache MavenでリポジトリのMirrorを設定する

前に、ちょっとしたことからApache MavenでリポジトリのMirrorを設定できることを知ったので、メモ。 Mirror? 詳細は、こちらを。 Maven – Guide to Mirror Settings $HOME/.m2/settings.xmlに書くもので、リポジトリのMirrorを定義できるようです。 どうい…

OKD/Minishift上で、マルチモジュール構成のMavenプロジェクトをデプロイする

これは、なにをしたくて書いたもの? JavaアプリケーションをMavenのマルチモジュール構成で作った時に、「どうやってデプロイするんだっけ?」と思ったので S2Iビルドする時に、なにか設定とかがいるのではと思って調べてみようと というわけで、OKD/Minis…

Sonatype Nexus 3/2で、REST API+Groovyスクリプトを使ってリポジトリを作る

これは、なにをしたくて書いたもの? Sonatype Nexusを使ってリポジトリを作るのに、Web Consoleにログインして作るのが面倒だなーと思って他の方法は?と できれば、Sonatype Nexus 3と2、それぞれで知りたい REST APIと、スクリプトが使えるらしい 試して…

Maven Central RepositoryをREST API(Apache Solr)で検索する

Maven Central Repositoryに検索のAPIがあるのはなんとなく把握していたのですが、これまで使ったことがなかったので ちょっと試してみようかと思いまして。APIについてのドキュメントは、こちら。API GuideSearch API Reference(PDF)Bookmarkable URLsと…

Maven Wrapper(mvnw)を使って、Maven未インストール環境でもMavenを使えるようにする

使われているのはけっこう見てきているのですが、いい加減に自分でも使ってみようかと思い、Maven Wrapperを試して みることにしました。Maven Wrapperは、Gradle Wrapperにインスパイアされたものらしいです。第62章 GradleラッパーGradle Wrapperなら「gra…

OpenCloverでカバレッジを取得する(Maven Simple Project編)

2017年の春に、Atlassian Cloverというカバレッジを取得するツールがOSSになりました。Atlassian Clover がオープンソースに | Atlassian BlogsOpenClover - Java, Groovy and AspectJ code coverage toolということで、ちょっと試してみようかと。 お題 と…

OpenCloverでカバレッジを取得する(Maven Multi Project編)

先ほど、OpenCloverを使ってMavenのシンプルなプロジェクト構成でカバレッジを取るエントリを書きました。OpenCloverでカバレッジを取得する(Maven Simple Project編) - CLOVER今度は、マルチプロジェクト構成でのカバレッジ取得を行いたいと思います。 シ…

Nexus 3向けにMavenのローカルリポジトリのファイルをリモートリポジトリにデプロイするスクリプトを書く

最近、MavenのRepositoryとしてSonatype Nexus 3を使っているのですが、2の頃と違ってリポジトリの構成がファイルシステム そのものではなくて、バイナリな感じになりましたね?これにより、Maven Centralに置いていないようなライブラリは、Nexusに個別にde…

Versions Maven Pluginで、プロジェクトのバージョンを変更する

Mavenで、プロジェクトのバージョン自体はpom.xmlのproject.versionに書くわけですが、このバージョン番号を 更新する時ってどうするんでしょう?特に、マルチプロジェクト構成にしたりしていると、ひとつひとつを変えていくのは面倒ですよね。よく見かける…

「mvn verify」や「mvn package」でSourceとJavadocのJARファイルを生成する

Maven Release Pluginではなく、単純に「mvn verify」や「mvn package」でSourceやJavadocのJARも生成したい場合。それぞれ、Maven Source PluginとMaven Javadoc Pluginを使えばOKみたいです。Apache Maven Source Plugin – IntroductionApache Maven Javad…

sbtとMavenで、実行可能JARファイルの先頭に起動スクリプトを差し込む

sbt-assemblyやMaven Shade Pluginなどで実行可能なJARファイル(java -jar xxxxx.jar)を作成することが できますが、このJARファイルの最初の方にシェルスクリプトやWindowsのバッチファイルの内容を差し込むことで、 単体のファイルとして実行することが…

docker-maven-pluginで、Integration Test時にDockerコンテナの起動/停止をする

Docker+Mavenで、テスト時にDockerコンテナを起動してテストして…みたいなことを、そういえばやったことが ないなぁと思いまして。いつも、わりかしふつうにdocker runしてます。で、MavenでDockerを使うプラグインの情報をなんか見たことがあったので、軽…

Sonatype Nexus 3で、Third PartyのMavenアーティファクトをアップロードする(+リポジトリについて少し)

Sonatype Nexusですが、バージョン 2の頃はNexus上でアーティファクトのアップロードができていたようですが、Using the User Interface (Nexus 2)Uploading Components (Nexus 2)バージョン 3では、どうもこれができなさそうな感じです。 ※2系の頃に「Using…

Sonatype Nexus 3を使用して、PrivateなMavenリポジトリ、npm Registry、Docker Registryを構築する

Sonatype Nexusが、OSS版でもバージョン3からDocker Registryになれると聞き、「これは!」と思い 自分でも試してみようかと。News and Notes from the makers of Nexus | Sonatype BlogNews and Notes from the makers of Nexus | Sonatype BlogNexus Repos…

MavenでScalaを使う時の、個人的pom.xmlテンプレート

Scalaでコードを書く時のビルドツールはたいていsbtを使うわけですが、Java EE関係のものを扱う時にはMavenの方が都合がいいことも多いので、1度MavenでScalaを扱う時の設定をメモっておきます。個人的なテンプレートといった感じで。 pom.xmlを書いてみる M…

Mavenでの依存ライブラリの最新バージョンを表示、更新したりできるVersions Maven Plugin

JJUG CCC 2016 Springの「Spring Boot で Boot した後に作る Web アプリケーション基盤」というセッションで、Versions Maven Pluginというものがあることを知りました。Spring Boot で Boot した後に作る Web アプリケーション基盤/spring-boot-application…

Sonatype Nexusを使用して、ローカルMaven/npmリポジトリを構築する

追記) Nexus 3を使って、Docker Registryも含めたエントリを書きました。 Sonatype Nexus 3を使用して、PrivateなMavenリポジトリ、npm Registry、Docker Registryを構築する - CLOVER 今まで、自分のローカルMavenリポジトリはApacheを使って単にWebアクセ…

Maven 3で、コンパイルするソースのバージョンをとりあえず簡単に指定したい場合

非常によく忘れるので、メモ。MavenでJavaをコンパイルする時のバージョンを指定する時には、maven-compiler-pluginを使うものですが <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.3</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> Maven 3系だともっと簡…

マルチプロジェクト構成のMavenプロジェクトで、特定のサブプロジェクトのゴールを実行する

Mavenでのマルチプロジェクト構成に慣れていないので、いざ使ってちょっと調べてみたことをメモ。例えば、以下のようなプロジェクト構成の場合に、 pom.xml (parent) sub-1/pom.xml sub-2/pom.xml sub-3/pom.xml sub-2のみのtestを実行したいという場合。…

pom.xmlから、Ensimeの設定ファイルを作る

このところ、Spring Bootなどで遊んでいると、Scalaを使っているにも関わらずMavenを使うような事態になります。 ※極めて、個人の趣向ですで、自分はScalaコードを書く時はEmacs+Ensime+sbtなのですが、Mavenにしてしまうとこの組み合わせが使えません。こ…

maven-surefire-plugin、maven-exec-pluginでJavaVM引数を与えることを考える

ちょっとあるコードをデバッグしていて、方法がわからなかったので調べてみました。サンプルとして、こんなコードを用意します。 src/main/java/App.java public class App { public static void main(String... args) { new App().add(2, 3); } public int …

pom.xmlからauto-java-completeの.java_base.tagを作るbashスクリプト

そこそこ使いそうなので、書きました。bashです。pom.xmlが存在するディレクトリをカレントにして、実行。なお、auto-java-completeは「${HOME}/.emacs.d/elisp/auto-java-complete」にある前提です。 #!/bin/bash mvn clean dependency:copy-dependencies C…

Mavenで「mvn test」とオプションのメモ

Mavenを使っていて、よく忘れるので個人的なメモを兼ねて。当方、このブログを書く時はだいたいCLIで、IDEとか使わない(重い)のでこのあたりを使おうとしてよく忘れているというか…ハイ。 テストを実行する なんのことはなく、普通に。 $ mvn test テスト…

Mavenのexec:javaの使い方(コマンドライン指定)

非常によく忘れるので、メモ。Exec Maven Plugin exec:java http://mojo.codehaus.org/exec-maven-plugin/java-mojo.htmlExec Maven Pluginを使うことで、pom.xmlにメインクラスや引数指定が書けるのですが使い捨てのプログラムのためにいちいち設定するのも…

JBossのMavenリポジトリについて

以前Netty 3で遊んでいたり、最近Infinispanを使ったりするまで、まったく関わってこなかったJBossのプロジェクトですが、それを機にMavenリポジトリへの参照も設定するようになったわけです。が、なんかいっぱいあって、どれを使えばいいのかよくわかりませ…

Mavenでリポジトリへの接続タイムアウトを設定する

Mavenを使っていると、自分の仕事ではどこかで出くわすのが「インターネットにつながっていない時の動きが微妙」というところ。最終的にビルド環境をインターネットにつなげられないところに構築することが多くて、そういう時はMavenリポジトリを自分で立て…

続・Infinispan Tree APIで、sbt+Scalaでビルドができない件について

6/24追記) Mavenでの動作確認と、もう少し結論を加えました昨日、sbtでもGradleでも、ScalaでInfinispanのTree APIでビルドに失敗し、しかもscalacコマンドではビルドに成功するという意味不明な状態を見ることになりました。前回のエントリ http://d.haten…

Selenium WebDriverとMavenを使って、受け入れテストの自動化を行う

せっかくSelenium WebDriverを使ったのなら、Mavenの組み込みJettyを使って受け入れテストを自動化したいところ…。って、この本の受け売りですけどね。Apache Maven 3クックブック Javaソフトウェア開発のための特選レシピ集作者: Srirangan,長尾高弘出版社/…

mvnコマンドで、ソースとJavadocのJARを取得する

最近、またMavenリポジトリを作ることになりまして。以前の反省を踏まえてdependency:go-offlineゴールを活用して作ろうと思ったのですが、そういえば、ソースとかJavadocとかも落とせた方がいいなぁと思って調べてみました。Eclipseとかではなく、mvnコマン…