文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

gradle

Intellij IDEA + gradleでspring loadedが動かない問題

spring bootでウェーイしようと思い、IDEをIntellijにしようとしたのですが、何故かspring loadedが動かない問題に遭遇しました。結果的にしょうもないオチがつきましたが解決しました。

xvfbとfirefoxでseleniumをヘッドレスに起動する手順

最近開発をしていて、入力フォームが沢山ある案件で、あれを修正するとあっちの画面にもこっちの画面に影響する、といった現象が連鎖してしまい、段々と影響範囲をテストできなくなってきました。これを何とかするため、ついにSelenium WebDriverを使うよう…

eclipseでJava ProjectをDynamic Web Projectに変更してプロジェクトに親子関係を持たせる

eclipseでサンプルプロジェクトをインポートした際にjavaプロジェクトだが、これを後から動的プロジェクト(Dynamic Web Project)に変更し、更にプロジェクトに親子関係を持たせる方法を紹介します。昔作った古いプロジェクトが動的webプロジェクトになって…

【化石】antでjsとcssのminifyを再帰的にファイル毎に行う【原始的】

さて、今日は旧石器時代のビルドのお話です。 最近私はソースコード全般が非常に古いプロジェクトを担当しており、 そのプロジェクトのビルドがantで行われています。このantは非常に歴史が古く、xml地獄の冗長なビルドシステムで、当然そう簡単にjsのminify…

javaのビルドをgradleで行う:実践編6:高速に実用的な実行可能jarを生成する

今回はExecutableJar、所謂実行可能jarを生成する方法についてです。 簡単な実行可能jarの作り方としては以下のコードがよくサンプルとして挙がります。 jar { from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } manifest.mainA…

javaのビルドをgradleで行う:実践編5:マルチプロジェクト時のprovidedCompileについて

Gradleの依存管理にはprovidedCompileという属性があります。 これは、コンパイル時にはクラスパスに含めるが、パッケージ(war・jar等)には含めない、 という機能です。しかしこのprovidedCompile、どうもサブプロジェクト構成で挙動が怪しいのです。 Gradle…

javaのビルドをgradleで行う:実践編4:あれどうやるの?の疑問と自己解決

今回は「antのあのコマンドってどうやんの?」「bashのあのコマンドってどうやんの?」 といった「あれどうやるの?」系についてまとめていきます。 部分的にまとめるのではなく、実際のプロジェクト構成に沿った内容にしています。 実践できないサンプルは…

javaのビルドをgradleで行う:実践編3:jspの文字列置換(ReplaceTokens)

今回はantでよく使われるreplaceをgradleで行なってみます。htmlやjspでjsをincludeする時、タイムスタンプをパラメータに付与して、 ビルド毎にキャッシュを入れ替える処理をやる事があります。 <script type="text/javascript" src="http://platform.twitter.com/widgets.js?t=20130606235611"></script> こうすると、ビルドしたタイミングのタイムスタンプがパラメ…

javaのビルドをgradleで行う:実践編2:静的ファイルの圧縮

webアプリをビルドする際に必ず必要になる、静的ファイルの圧縮です。 htdocsに配置するための圧縮ファイルを生成してみましょう。 subprojects { task zipStatic(type: Zip) { from 'src/main/webapp/static' baseName = 'static' } } 以下のフォルダ構成の…

javaのビルドをgradleで行う:実践編1:jsとcssのcombineとminify

ついに実践編に突入です。今回は必ず必要になるであろう、 jsとcssのcombine・minify です。combineについては不要かもしれません。 昔はjsのロードは並列でなかったため、combineして1ファイル化すると高速になりましたが、 最近のchrome等はブラウザの独自…

javaのビルドをgradleで行う:調査編4:Groovy Librariesの罠

Dolteng等でプロジェクトを生成した後に、 Configure -> Convert to Gradle Project としてGradleプロジェクトにした時の罠を紹介。Gradleプロジェクトに変換した時に、以下がビルドパスに追加されます。 Groovy DSL Support Groovy Libraries Gradle DSLD s…

javaのビルドをgradleで行う:調査編3:seasar系の依存の注意点

ついに実戦投入し、連日悪戦苦闘しているGradle。 今回はseasarの依存管理についてです。特に大した話ではないので結論を先に書くと、 Maven Repositoryにseasarは無い のです。 無いにも関わらず自分のローカル環境では動いていました。 理由は簡単です。 r…

javaのビルドをgradleで行う:調査編2:依存から1行で特定jarを除外!

javaのビルドをgradleで行う:調査編1:maven・SBTとの違い - treeのメモ帳 調査編その2です。今回は依存jarから特定のjarを除外するのですが、 1行で一気に依存がら特定jarを除外する をやってみました。 この説明では意味が伝わりにくいので、具体的なサン…

javaのビルドをgradleで行う:調査編1:maven・SBTとの違い

javaのビルドツールといえば、Apache ant、Apache mavenが定番です。 しかし両者はビルドの定義をxmlで行い、非常に冗長な定義ファイルが必要になります。 そのxml地獄を解消するため、GradleとSBTという先進的なビルドツールが生まれました。Gradleとは?Gr…