このサイトは、只今WEB業界で活躍中のデザイナー、プログラマーの方々の情報を集めたweb統合情報サイトです。

Archives Details

Gradleを用いたアプリケーション作成方法

Java

2018.11.23

この記事は最終更新日から1年以上が経過しています。

今回は、ビルドツールであるGradleを用いて、JavaアプリをGradleでビルドする方法となります。

Gradle 公式ページ

https://gradle.org/

公式ページは上記のリンクとなります。

まずは、Gradleをダウンロードしていきます。

ダウンロード

Gradleのダウンロードは、以下のリリースページよりダウンロードが行えます。

https://gradle.org/releases/

少しページの下を見ると以下のような記述があります。

v4.10.2
Sep 19, 2018

2018年11月現在、 v4.10.2が最新のようなのでこちらをダウンロードしていきます。

ダウンロードファイルには「binary-only」と、「complete」があり、それぞれ以下のようなファイルが格納されております。

binary-only

complete

とりあえずは、「binary-only」の方で良いかと思います。

リンクをクリックして、ファイルをダウンロードします。

gradle セットアップ

ファイルダウンロード完了したら、任意の場所へと移動します。

とりあえず「/usr/local/」以下に格納。

$ mv ./gradle-4.10.2 /usr/local/gradle-4.10.2

gradleコマンドが使用できるようにパスを通します。

.bash_profile」などにパス追加を記述。

.bash_profile

$ vim ~/.bash_profile

先程配置したパスとファイルの「bin」のパスを追加します。

export PATH=/usr/local/gradle-4.10.2/bin/:$PATH
export PATH

追加したら、sourceコマンドで反映。

$ source ~/.bash_profile

おもむろに、gradleコマンドを実行してみると、どうやら上手く行っているようです。

$ gradle
Starting a Gradle Daemon (subsequent builds will be faster)

> Task :help

Welcome to Gradle 4.10.2.

To run a build, run gradle <task> ...

To see a list of available tasks, run gradle tasks

To see a list of command-line options, run gradle --help

To see more detail about a task, run gradle help --task <task>

For troubleshooting, visit https://help.gradle.org

BUILD SUCCESSFUL in 2s

1 actionable task: 1 executed

gradle tasks」コマンドで、gradleで実行できるタスクを表示することができますので、プロジェクト配下でコマンド実行。

$ gradle tasks
> Task :tasks

------------------------------------------------------------

All tasks runnable from root project

------------------------------------------------------------

Build Setup tasks

-----------------

init - Initializes a new Gradle build.

wrapper - Generates Gradle wrapper files.

Help tasks

----------

buildEnvironment - Displays all buildscript dependencies declared in root project 'grabletest'.

components - Displays the components produced by root project 'grabletest'. [incubating]

dependencies - Displays all dependencies declared in root project 'grabletest'.

dependencyInsight - Displays the insight into a specific dependency in root project 'grabletest'.

dependentComponents - Displays the dependent components of components in root project 'grabletest'. [incubating]

help - Displays a help message.

model - Displays the configuration model of root project 'grabletest'. [incubating]

projects - Displays the sub-projects of root project 'grabletest'.

properties - Displays the properties of root project 'grabletest'.

tasks - Displays the tasks runnable from root project 'grabletest'.

To see all tasks and more detail, run gradle tasks --all

To see more detail about a task, run gradle help --task <task>

BUILD SUCCESSFUL in 0s

1 actionable task: 1 executed

Java プロジェクト作成

Javaで「Hello world」まで行ってみます。

まずは、適当にディレクトリを作成していきます

今回は「grabletest」を作成。

$ mkdir grabletest
$ cd grabletest/

作成したディレクトリに移動して「gradle init」コマンドを実行。

$ gradle init
BUILD SUCCESSFUL in 0s
2 actionable tasks: 2 executed

問題なく成功すると、上記のようなメッセージが表示し、いくつかファイルが生成されております。

intelliJでファイルを開こうとすると、自動でGradleファイルを認識し、以下のようなダイアログが表示します。

とりあえず、そのまま「OK」を押下。

ディレクトリを確認すると、以下のようなファイルが生成されております。

「gradle」「.gradle」フォルダ Gradle本体が使用するファイルが格納されています。

基本的には扱わない。

build.gradle Gradleのビルドファイルで、Mavenのpom.xmlに相当します。

ビルドに関する情報や処理をこちらに記述。

settings.gradle Gradleの設定情報を記述。
「gradlew」「gradlew」  Gradleの実行バッチファイル

また、おもむろに「gradle build」コマンドを実行してみます。

$ gradle build
> Task :buildEnvironment

------------------------------------------------------------

Root project

------------------------------------------------------------

classpath

No dependencies

A web-based, searchable dependency report is available by adding the --scan option.

BUILD SUCCESSFUL in 0s

1 actionable task: 1 executed

とりあえずは成功しましたが、特にソースなどないため変化はない模様。

それでは、Javaファイルを作成して「Hello World」を表示していきます。

Java Class作成

それでは、JavaのClassを作成していきます。

src > main > java > hello > HelloWorld.java

を作成。

HelloWorld.javaには、以下の様に「Hello World!」を表示させるための単純な記述を行います。

HelloWorld.java

package hello;

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello World!");
    }
}

javaプラグインを使ってこのプロジェクトをビルドするので、「build.gradle」に 「apply plugin: ‘java’」を追加。

build.gradle

apply plugin: 'java'

再び、「gradle build」を実行してみます。

$ gradle build
BUILD SUCCESSFUL in 0s
2 actionable tasks: 2 executed

すると、今回は「build」ディレクトリが作成され、色々とファイルが生成されました。

以下のjavaコマンドで、実行してみると。

$ java -cp build/libs/grabletest.jar hello.HelloWorld
Hello World!

Hello Worldが表示しました!

このコマンドでの実行方法以外にも、「gradle run」で実行する方法があります。

build.gradleファイルを開いて編集します。

build.gradle

apply plugin: 'java'
apply plugin: 'application'

mainClassName = 'hello.HelloWorld'

上記の様に、「apply plugin: ‘application’」と「mainClassName = ‘hello.HelloWorld’」を追記します。

applicationプラグインを利用すると、「gradle run」コマンドでアプリケーションを起動できるようになります。

それでは実行してみます。

$ gradle run
> Task :run

Hello World!

BUILD SUCCESSFUL in 0s

2 actionable tasks: 1 executed, 1 up-to-date

成功して「Hello World!」がコンソールに表示しました。

Comment

Related Article

IntelliJ + Spring Initializr + Gradleで、サクッとSpring Boot環境を構築

2018.11.24

Mavenを用いたアプリケーション作成方法

2018.11.24

Gradleを用いたアプリケーション作成方法

2018.11.23

JavaでiOSアプリ開発 RoboVM + eclipse

2013.09.06

Java 始めました。mac IDE環境設定 Eclipse日本語化

2013.07.21

CATEGORY LIST

LATEST NEWS

SPAサイトでの認証認可 JWT✗Rails5✗Nuxt.js

JavaScript

2019.03.24

CentOS MySQL(MariaDB) を バージョン10.3に yumでアップデート

MySQL

2019.03.22

Ubuntu 開発環境構築まとめ

ubuntu

2019.02.25

Nuxt.js と auth-module (@nuxtjs/auth)で、JWT(JSON Web Tokens)& OAuth 認証 ログイン

JavaScript

2019.02.21

HerokuでRailsをビルド buildpack、Rubyバージョンでエラー

エラー

2019.02.13

ブラウザフィンガープリントは、Cookieの代用となるのか? JSライブラリ Fingerprintjs2など。

JavaScript

2019.02.03

CPUの創りかた TD4 購入(必要)パーツ一覧

電子工作

2019.01.21

あけましておめでとうございます(かなり遅め)

イベント

2019.01.12

Vue.jsでSPA、Vuex使用するなら Nuxt.jsが超絶便利な件。

JavaScript

2018.12.23

2018年 Docker 使い方 まとめ その3

Docker

2018.12.17

2018年 Docker 使い方 まとめ その2

Docker

2018.12.16

2018年 Docker 使い方 まとめ その1

Docker

2018.12.15

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

WEBデザイナーの、WEBデザイナーによる、WEBデザイナーの為のサイト。「みんなで書こう!」と仲間を募ってみたが、結局書くのは自分だけとなってしまいました。日々のメモを綴っていきます。

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

MAD CITY 北九州市で生まれ育つ。20代はバンド活動に明け暮れ、ふと「webデザイナーになりたい。」と思い、デジタルハリウッド福岡校入学。卒業後、数々の賞を受賞、web業界をざわつかせる。
現在、主に、ゲーム制作中心に港区六本木界隈で活動中。

FOLLOW US