Maven2/3
いつの間にか GitHub に「GitHub Packages」という機能がついて、自作のライブラリ等を公開できるようになっていたので、Java のプロジェクト管理ツール Apache Maven からの使い方を試してみました。Maven から GitHub Packages を使う方法は公式のドキュメ…
前回の記事『ラムダ式やストリーム API や新しい日時 API だけじゃない! Java8 のタイプ・アノテーションあの手この手』で、Java8 で導入されたタイプ・アノテーションがどういったものか紹介しました。 その記事では同一要素に重複して同じアノテーション…
Java/Groovy のテスティング・フレームワーク Spock の使い方をあれこれ調べてみました。 まぁ、Gradle 使えるならそれに越したことはないですが、なんとなく Maven3 やコマンドラインからの使用方法も試してみました。どうも Maven3 から GMaven が Groovy …
GMaven 1.3がリリースされていたので使ってみた(参照 URL : Ben Tilford's Blog「GMaven 1.3 is out」)。このバージョンでは configuration 要素の sourceEncoding, source, target が動作するようになった Java スタブコードで java.util.*, java.io.* …
なんか、やたらとコンパイルエラーがでますねぇ・・・(^ ^;) ほとんどライブラリのダウンロード(+ちょっとしたスクリプト)にしか使ってなかったので、問題ないかと思ってたけど、あまり気持ちのいいものじゃないですねぇ。IntelliJ IDEA 上でコンパイル&…
以前に Maven2 プロジェクトで Groovy を使用する方法を見ました(一覧)。 ただし、Groovy は便利で、Java と Groovy がシームレスに連携できるとはいえ、いきなり Java プロジェクトを Groovy プロジェクトに変更できるとは限りません。そこで、メインコー…
GMaven プラグイン・プロジェクトの pom.xml は結構複雑なので(以前の記事)毎回書くのは大変です。 そこで Groovy の練習を兼ねて、テンプレートを生成するスクリプトを書いてみました(GMavenPluginArchetype.groovy)*1(一覧)。スクリプトの実行 上記…
今回はプラグインのインストール&使用とか(一覧)。GroovyMojo クラス GMaven プラグインで行う処理を実装するのは GroovyMojo のサブクラスです。 なので、GMaven プラグインには最低1つは以下のようなクラス(GroovyMojo クラス)を作成する必要がありま…
今回は GMaven プラグイン・プロジェクト(Groovy による Maven2 プラグインを開発するプロジェクト)の pom.xml を見ていきます(一覧)。まずその前に、お詫びと訂正を。 別に拙者が悪いわけではないんですけど。 前回見た GMaven プラグイン・プロジェク…
「対話的に Maven2 プロジェクトを生成する」際のコマンド mvn archetype:generate を実行すると、プロジェクトのテンプレートが249個も出てくるんですけど! 「番号で選べ」って言われても探しきれない! しかも番号が前のモノから変わってるし!挙げ句の果…
今回から何回かにわたって、Groovy を使った Maven2 プラグイン(以下「GMaven プラグイン」)の開発方法を見ていきます(Implemeting Maven Plugins 参照)。 今回は GMaven プラグイン・プロジェクトの生成方法(一覧)。 GMaven プラグイン・プロジェクト…
GMaven の全ての機能を紹介するのは面倒なので、GMaven できることを列挙してみました(一覧)。 大きく分けて次の2つ: Groovy コードを実行する GMaven のその他のゴール 詳しくは各表の「ドキュメント」に張っているリンクを参照。Groovy コードを実行す…
前々回、前回に Maven2 で Groovy コードを実行する方法を見ましたが、このコード中で、自分で定義する必要なく使用できる「定義済み変数」がいくつかあります。 今回はそれらと、それらのプロパティを見ていく、というか参考のために列挙しておきます(一覧…
前回に引き続き、今回は「フェイズ実行時」に Groovy コードを実行する方法を見ていきます(一覧)。今回以降、特に必要がない限り Groovy 1.7 ではなく、Groovy 1.6 (GMaven 1.2) の環境を前提とします。pom.xml 実行したい Groovy コードは前回と同じく pr…
今回は Maven2 で Groovy コードを実行する方法を紹介(一覧)。 「Executing Groovy Code」を参考にしてます。前々回と同じように、GMaven のサポートのせいで Groovy 1.7 以降を使うにはいろいろ設定が必要です。 とはいっても、ここで Groovy 1.6 を使っ…
GMaven プロジェクトのコンパイル、テスト、インストールとか GMaven を使って作成した Groovy プロジェクトを「GMaven プロジェクト」と呼ぶことにします(一般的には使われてないと思いますが)。前回は GMaven プロジェクトの作成方法を見ました(一覧)…
前回、GMaven でプロジェクトを生成する方法を見ましたが、どうもドキュメントが古いようで Groovy のバージョンが 1.5.6 とかでしか使えないので、Groovy, GMaven ともにもう少し新しいバージョンのものを使えるようにしましょう(一覧)。今回の内容: プ…
今回から何回かにわたり、GMaven の使い方を見ていきます(一覧)。今回の内容 プロジェクトを生成する 対話的にプロジェクトを生成する パラメータを指定してプロジェクトを生成する 生成されるプロジェクト ディレクトリ構造 pom.xml プロジェクトを生成す…
Maven2 関連の記事を整理しました(→) Apache Maven 2.0入門 Java・オープンソース・ビルドツール作者: 野瀬直樹,横田健彦出版社/メーカー: 技術評論社発売日: 2006/12/13メディア: 大型本購入: 8人 クリック: 141回この商品を含むブログ (97件) を見る
今回は「パラメータを指定してプロジェクトを作成する」方法を見ていきます(一覧)。 この方法は、Archetype プラグインの「create ゴール」と同じです*1。パラメータを指定してプロジェクトを作成する プロジェクト生成の流れは以下のようになります: コ…
最近あまり使っていなかったので更新に疎くなっていましたが、Archetype プラグインの「generate ゴール」がそれなりに使いやすくなっているようなので、使い方を見てみましょう。 といっても、以前の記事と内容はあまり変わりませんが*1。プロジェクトの作…
Maven2 プロジェクトで JSON を用いるためには、プロジェクトの POM ファイルに以下のような <dependency> 要素を付加します: <dependency> <groupId>org.json</groupId> <artifactId>json</artifactId> <version>20070829</version> </dependency> JSON を使ったサンプル Maven2 とはあまり関係ありませんが、『Ajax&JavaーJavaプログラマのためのAjaxプライマー</dependency>…
初めて Web アプリケーションを配備する 開発中のプロジェクトをビルドしてローカル・サーバへ配備 (deploy) するには、プロジェクトのベース・フォルダ上でコマンド mvn tomcat:deploy を実行します。 このコマンドで、デフォルトのビルド・ライフサイクル…
Web アプリケーションを開発する際、実際にローカル・サーバなどのサーバに配備 (deploy) して挙動を確認する作業をする必要があります。 ローカル・サーバに Tomcat を用いている場合、「tomcat-maven-plugin」によって、Web アプリケーションを配備する処…
Eclipse プロジェクトの設定ファイルを生成する プロジェクトのベース・フォルダ上で以下のコマンドを実行します: mvn eclipse:eclipse Eclipse 上へプロジェクトを読み込む Eclipse 上で、[メニュー]File → Import として 「Import ダイアログ」を開き、下…
Maven2, Eclipse, Tomcat を用いて Web アプリケーションを開発する環境を構築してみましょう(一覧)*1。 あまり本格的なものは扱いません。 ほぼ最低限の設定のみです。 また、Maven2, Eclipse, Tomcat はそれぞれインストールされているものとします。環…
前回、Maven2 プロジェクト内で RELAX NG による妥当性検証を行うために必要なライブラリの設定の仕方をみました。ただし、それらを毎回 POM ファイルに書くのは面倒なので、それらの依存性を別の POM プロジェクトに書いて、それを再利用できる用にしましょ…
RELAX NG を用いて妥当性検証を行うには、幾つかのライブラリを CLASSPATH に含める必要がありました。 必要なのは msv (multi schema validator) とその関連ライブラリ msv isorelax relaxngDatatype xsdlib それに加えて、msv と javax.xml.validation パ…
前回までに、アスペクト・ライブラリの作成の仕方を見てきました。 今回は、アスペクト・ライブラリの作成に当たっての注意を1つ。アスペクト・ライブラリの作成方法を書くに当たって参考にしたドキュメントは、AspectJ のコンパイル&織り込みを行うツール…
今回は、前回作成したアスペクト・ライブラリを使用してみましょう。アスペクト・ライブラリを使用するプロジェクトは「greeting-app」とします。pom.xml とりあえず、サンプルを。 <project> <modelVersion>4.0.0</modelVersion> <groupId>org.sample</groupId> <artifactId>greeting-app</artifactId> <packaging>jar</packaging> <version>0.1</version> <dependencies> <dependency> <groupId>org.s…</groupid></dependency></dependencies></project>