Gradleの利用

ビルドとは

ソフトウェアのビルド(英: build)は、ソースコードファイルを独立したソフトウェア生成物に変換するコンピュータ上で実行されるプロセス、またはその結果を指す。ビルドにおいて最も重要なのはコンパイルプロセスであり、ソースコードファイルを実行ファイルに変換する。

ビルド (ソフトウェア) – Wikipedia

要するに「コードを書いた後に実行できるようするまでにする作業」のこと。これまでは、NetBeansで行ってきた(「ファイルの実行」をクリックすることで、コンパイルが行われ実行された)。

Javaを用いた開発に使われるビルドツール

  • Ant
  • Maven
  • Gradle
  • etc…

Android用の開発環境であるAndroid StudioではGradleが採用されている。

NetBeansでGradleを使う

プラグイン

Gradle Supportプラグインをインストールすることで、Gradleベースのプロジェクトを作成・管理することができる。

プラグインを確認

インストール済みにあることを確認する。

プロジェクトの作成

Single Gradle Projectを選択。

プロジェクトを選択

プロジェクト名とメインクラス(メインメソッドを作るクラス)を指定する。メインクラスは完全修飾クラス名(パッケージ名を頭につける)で指定する。

プロジェクト名とメインクラス

プロジェクトには、メインクラス(Main.java)とビルドスクリプト(build.gradleとsettings.gradle)が作成される。

プロジェクトの構造

実行する

Main.javaに書き加える。

プロジェクトを右クリックして、Runをクリック。

runタスクの実行

出力ウィンドウに出力される。

出力ウィンドウ

外部のライブラリを使う

これまで、JDKに含まれるライブラリ(クラス)を使ってきたが、世の中には様々なライブラリが公開されている。ライブラリをプロジェクトに取り込んで使ってみよう。

GradleはMavenのリポジトリ(ライブラリが保管されているサーバ)からライブラリをダウンロードする機能があるので、Mavenのリポジトリから利用するライブラリを探すのが簡単だ。

今回は、HTMLパーサ(HTMLを解釈してあれこれするためのソフト)のJsoupを使ってみよう。MavenのリポジトリのJsoup 1.10.2のページにある、Gradle用の記述をコピーし、build.gradleのdependenciesにペーストする。

Mavenレポジトリからコピー

プロジェクトを右クリックして、Reload Projectをクリックすると、依存ライブラリがダウンロードされ、プロジェクトに追加される。

Dependenciesに追加される

Jsoupの利用例

ニュースのサイトからニュースのタイトル一覧を取得しよう。

注意: ブラウザで人間が操作するのではなく、機械的にページを取得する行為は一般に「ウェブスクレイピング(Web scraping)」というが、スクレイピングが想定されていない場合が多い(あるいは明示的に禁止されている)。ウェブから情報を取得するときには、まず専用のAPIがあるかどうか確認しよう。またスクレイピングによって情報を取得する場合も、その頻度を調整するなど、迷惑をかけないようにしよう(提供する側の立場としては、そもそもスクレイピングして欲しくない場合が多い)。

例外処理

教科書[P.65]を参照。

ポイント:

  • 例外(exception、エラーのこと)が発生したらcatch節に飛ぶ。
  • 例外の種類
    • チェック例外: 必ずtryでチェックしなければならない。
    • 非チェック例外: チェックしなくて良い。例えば、0で除算など。