OSS Product feat. Gradle

  • View
    1.731

  • Download
    0

  • Category

    Software

Preview:

DESCRIPTION

Material of LT for JGGUG meetup at 2014-10-24

Citation preview

OSS開発者としての嗜み ~ぐれ江戸るしぐさ~

OSS Product feat. Gradlenobeans

OSSプロダクトの 利用者/貢献者目線からみたGradleのメリット

こんなOSS プロダクトは嫌だ

Ant/Mavenの インストールが必要

zip探してダウンロードして展開して~が面倒だったので$ apt-get install ant

してみたら、大量の依存ライブラリがドバドバとインストールされた。

ちょっとビルドしてみたかっただけなのに…orz

Gradle Wrapper次の2点以外に準備は不用:1. Javaがインストールされている2. ネットにつながっている

もちろんグローバル環境は汚しませんプロジェクト直下にスクリプトが、$HOME/.gradle/wrapper 配下にDLしたバイナリ等が格納される

そこで

どうやってビルドを実行すればよいかわからないAnt/Maven/Gradleは用意したけど、

さて、なんてコマンドを実行すればいいの?

デフォルトタスク 適切に設定しておけば

Gradleコマンドを無引数で実行するだけでOK

$  ./gradlew→clean, test, distタスクが実行される

そこで

//  build.gradle  defaultTasks  'clean',  'test',  'dist'

(例)

ソースを展開したものの次に何をすればよいかわからない

おい、ドキュメントはどこだ

README.mdビルドツールに何使っててもいいからとりあえず

RequiresとHow To BuildとUsageとか最小限の説明ぐらい書きましょう

そこで

Web+DBプレスvol.83で特集されたし、今ならMarkdownがおすすめ

 GaidenMarkdownでまとまったドキュメント書くなら使ってみるといいんじゃないかな (震え声

近々v1.0がでます、たぶん

※未承諾広告

https://github.com/kobo/gaiden

$ gvm install gaiden

v1.0のデフォルトテーマはこんな感じ

Gaiden Wrapperもあるよ

動機 == 私怨一週間ぐらい前に、あるOSSツールを試そうとして、よせばいいのにバイナリzipじゃなくて、ソースコードも読みたいからとGithubからcloneしてビ

ルドしようとしたら

READMEにはアプリ名の1行だけしかない→どうやってビルドするの?→build.xmlがあるからAntかな?

→めんどいのでapt-getでAntをインストールしてみた→ウワアァァァァ

→build.xmlを読んで適当にタスクを実行したらzipができた→あれ、またこれ展開するの?

→ダウンロードしとけば良かった…orz

…ということで、このネタを思いつきました

告OSSプロダクトを提供している開発者各位におかれましてはひとつご理解ご協力のほどよろしくお願いいたします。

1. Ant/MavenからGradleへ移行する2. Gradle Wrapperは標準装備で3. コレやっときゃ間違いない、という一連のタスク呼び出しをデフォルトタスクとして定義

4. ビルドの仕方だけでもREADME.mdに書く

受託開発でも、gradlewコマンドを無引数で実行したら即ビルドできる、というのは結構価値が高いはず