タイトルがめちゃくちゃ長くなってしまった(^^; 今日のJJUGナイトセミナーはイベント告知後、すぐにキャンセル待ち状態となっていたので登録を諦めていたのですが…今日のお昼にみたら空きができてた!ので申し込んで行ってきました。 http://jjug.doorkeeper.jp/events/10618 Mavenはもう古い、時代はGradleだ!的な話はチラホラ聞いたことがありましたが、私は普段Mavenしか利用しておらず、実際にGradleを触ったことはないので、今日参加して色々と話が聞けて良かったです。 Gradleの本家サイト http://www.gradle.org/ Gradle 日本語ドキュメント http://gradle.monochromeroad.com/docs/index.html 発表の中でも紹介がありましたが、GradleはSpringやHibernateの
ひしだまHPの更新履歴。 主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。 Asakusa Framework 勉強会 2014冬で話題にしたAsakusa Framework0.6.0が出ましたよ。 →リリースノート 今回は色々大きい機能変更・機能追加が! まず、標準のビルドシステムが今までのMavenからGradleに変わった。 と言っても、当面はMavenでも今まで通り使用できるけど。 でもGradleプラグインの方が環境構築が簡単なので(Maven版だとMavenをインストールする必要があるが、GradleプラグインだとJavaだけ入っていればいい)、今後はGradleプラグインを使うのがお薦め。 (Jinrikishaも、内部ではGradleを使うように変わった模様) それから、Shafuが公開された。(前からひっそり公開されていたけれ
2014-02-07 Gradleで実行可能(executable)なjarを作る 世に出回ってる方法で下記のようなモノがある。 jar { from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } manifest.mainAttributes("Main-Class" : "tree.s2.batch.SampleBatch") } 自分もこれでいいのかなーなんて思っていた。 ・・・が javaのビルドをgradleで行う:実践編6:高速に実用的な実行可能jarを生成する - treeのメモ帳 あれ?このブログを読む限り駄目なんじゃね? で、pluginがあったのでこっち使ってみた。 stigkj/gradle-executable-jar-plugin · GitHub 実行はちゃんとされて
Gradle実践シリーズその6です〜 今回はExecutableJar、所謂実行可能jarを生成する方法についてです。 簡単な実行可能jarの作り方としては以下のコードがよくサンプルとして挙がります。 jar { from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } manifest.mainAttributes("Main-Class" : "tree.s2.batch.SampleBatch") } これで実行可能jarは作成できました!やったぜ。 ・・・ ・・・・・ ・・・・・・・ 全然やってない 全然ダメです。 何がダメかというと、jarの中身がダメなのです。 ちょっとこのjarを解凍してみます。 ・・・中略・・・ creating: META-INF/maven/org.seasar
こんな大変なときになんですが... 何もしないよりは 自分にできることを続けていこう!! と言うことで... id:fumokmm さんから ConfigSlurper で複数の設定ファイルの内容を マージする方法を教えてもらったので、今回は 環境ごとの構成を デフォルト設定 environment/default.gradle 環境毎の設定 environment/${env}.gradle ユーザ毎の設定 ${user.home}/.gradle/environment.gradle といった複数のファイルで設定できるようにしてみました。 build.gradle はこんな感じ... if (!hasProperty('env')) { env = System.env['GRADLE_ENV'] ?: 'development' } config = { def slurper =
しばらく書いていないと忘れてしまうのでメモ。 Gradle(Groovy)なので柔軟に書けちゃうので、これが正解というわけではないです。 基本的な設定 java, mavenプラグインを設定する。 apply plugin: 'java' apply plugin: 'maven' pom.xmlのgroupId、artifactId、versionの元ネタを設定する。archiveBaseNameは省略可能。その場合、プロジェクトのフォルダ名が使われる(参考)。archivesBaseNameの代わりに、jar.baseName でもOK。 group = 'com.github.wadahiro' archivesBaseName = 'maven-upload-sample' version = '1.0' uploadArchivesタスクを設定する。 uploadArchives
JUnit実践入門見ながらMaven試してたら、いつのまにか3つのビルドスクリプト比較してた。 簡単なスクリプトだけど、Gradleの簡便さが分かると思います。 【やりたいこと】 Javaコンパイラのバージョンを指定してコンパイル JUnitのjarをMavenCentralから持ってくる ソースのエンコードをUTF-8で指定 以上。 ついでに、それぞれ一回実行して、jarがローカルにキャッシュされた状態での実行時間も測ってみました。 コンパイル対象は以下の2クラス。 Sample.java package org.sample; public class Sample { public static void main(String[] args){ System.out.println("Hello World!"); } } SampleTest.java package org.s
ハマることがあるかも。と言うか私以外にもハマった人が居たので、書いておきます。 なお、ここではgradle1.9、jersey1.17.1を使っています。他のバージョンは知らない。 お話 「時代はJAX-RSなので素振りでもしてみよう」と思いたちますよね。そしたら「backpaper0 JAX-RS」とかでググりますよね? JAX-RSとかの話 — 裏紙 で。これを見ながらもpom.xmlなんて書いてられないので、「時代はGradleだ」と思ってbuild.gradleを書きますよね? apply plugin: 'java' repositories.mavenCentral() dependencies { compile 'com.sun.jersey:jersey-bundle:1.17.1' testCompile 'com.sun.jersey.jersey-test-fram
なんか最近ほっとな感じがするJAX-RSのお話に便乗。 JavaでさくさくWebアプリ開発 - しんさんの出張所 はてな編 JAX-RSとかの話 — 裏紙 short answer apply plugin: 'java' apply plugin: 'jetty' repositories.mavenCentral() dependencies { providedCompile 'com.sun.jersey:jersey-bundle:1.17.1' providedCompile 'asm:asm:3.1' } これで `gradle jettyRun` で動かせます。やったね。 以下ははまりどころとかpom出力とか。 ライブラリの依存解決 jersey-bundleは全部入りでコンパイルするには便利なんですが、動かす際のライブラリがprovidedになってたりして持ってきてくれま
前回、GitHub を Maven リポジトリにする方法を書きましたが、 成果物を GitHub へ公開するには コマンドでの操作が必要なため結構面倒です。 しかも、毎回同じコマンドを実行し、『○○ 0.1.0 リリース』 みたいなありきたりなコミットコメントを 書かなくてはならない... こういう退屈な反復作業を行うために Gradle のようなビルドツールはあるんだろ!! ということで Gradle の uploadArchives タスクで直接 成果物を GitHub へ公開してみましょう。 今回は Gradle から git を使うために Javaでおなじみ?の JGit を使います。 JGit は EGit とともに現在もかなり活発に開発が進められており、注目のライブラリの一つです。 現在の最新版は 0.11.3 ですが Maven リポジトリには 0.10.1 までしか公開され
ひしだまHPの更新履歴。 主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。 Asakusa Framework0.5.2で試験的に導入されたAsakusa Gradle Pluginを試してみた。 AsakusaFWはWindowsには正式対応していないが、GradleプラグインにはWindows用のバッチファイルも含まれているので、Windowsからも使うことが出来る。 Mavenをインストールする必要が無いので、Windowsから使うにはとても便利(笑) (特に、WindowsにはJinrikishaが無いから、余計にw) ダウンロードしたアーカイブを解凍してそこのコマンドを実行するだけ、という手順はシンプルで分かりやすい。 Windowsに正式対応していないが故にアーカイブ(プロジェクトテンプレート)はtar.gzファイルしか提供されていな
ひしだまHPの更新履歴。 主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。 今日Asakusa Framework0.5.2がリリースされたので、例によってちょっと見てみる。 →リリースノート・Changelogs 一番大きなのは、やはりGradle対応(#301)だろうなぁ。まだ実験的(experimental)な機能という扱いだけど。 今までMavenを使ってプロジェクトを作ったりコンパイルしたりしていたが、Mavenを使わずにGradleで実行できるようになるらしい。今度の週末に試してみよう(笑) 次に大きなのは、Direct I/O CSVとDirect I/O TSVのデータ圧縮解凍機能。(#305) Direct I/OなのでHDFSとAmazon S3が対象。 ネットワークとCPUを比べてネットワークの方がボトルネックになっている場
現在、antを使っているプロジェクトがGradleに移行してくるのもなかなか簡単です。やってみましょう。 <?xml version="1.0" ?> <project name="AntSample"> <target name="roll"> <script language="javascript"> <![CDATA[ // 6面ダイスを2個ふり、合計値を表示する var dice = Math.ceil(Math.random() * 6) + Math.ceil(Math.random() * 6); var echo = AntSample.createTask("echo"); echo.setMessage("2D6: " + dice); echo.perform(); ]]> </script> </target> </project> ant.importBuild
Gradleとは? Gradleというビルドツールをご存じだろうか? JavaではビルドツールとしてMavenやAntが利用されることが多いが、Gradleはこれらと同種のツールで、Groovyを使用しているという特徴がある。Mavenは少しでも規約から外れたことをしようとした場合の煩雑さ、Antはすべての処理を一から記述しなくてはならずXMLが肥大化しがちという問題をそれぞれ抱えている。 GradleはGroovyを使用しているものの、Groovy専用のビルドツールというわけではなく、Javaでの開発にも利用できる。ビルドスクリプトの記述にGroovyを使用するため、MavenやAntのXMLベースのビルドファイルのように冗長な記述は不要だ。また、Maven/IvyリポジトリやAntのビルドファイルを利用できるなど既存資産も活用することができる。 このようにGradleはこれまでMave
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く