このサイトは、只今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

Rust - Actix Web mongo ユーザー登録 JWT認証

Rust

2024.03.24

Rust - Actix Web JWT 認証認可 APIの作成

Rust

2024.02.25

Rust - Actix Web × JSON 静的ファイルをAPIで返却

Rust

2024.01.19

Rust - Actix Web × MongoDB環境をサクッと起動

Rust

2024.01.18

5分で学ぶ RustでWave Function Collapse (波動関数崩壊アルゴリズム)

Rust

2024.01.15

LLaMAモデル GGMLフォーマット(llama.cpp)をRustフレームワーク Leptosを用いて M1MacMiniでサクッと動かす。

Rust

2024.01.11

2024年 狙っているモバイルノートPC

tool

2024.01.07

MacOS XcodeにSDL2を追加

tool

2023.12.26

php 7.4にアップデート

PHP

2023.12.24

5分で覚える Flutter Flameで作る Wave Function Collapse - 波動関数崩壊アルゴリズム

AI・Bot・algorithm

2023.12.20

Flutter - Flameでゲーム作成 (キャラクターの移動)

Flutter

2023.07.23

Flutterで作る ChatGPT Prompt Manager

Flutter

2023.07.12

RANKING

Follow

SPONSOR

現在、掲載募集中です。



Links

About Us

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

Entry Profile

Graphical FrontEnd Engineer
- Daisuke Takayama

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

FOLLOW US