how use gradle build
このチュートリアルでは、Gradleを使用してGroovyでプロジェクトを作成し、タスクを記述し、IDEとビルドコマンドの両方を使用してGradleラッパーでタスクを実行する方法について説明します。
現代の開発者である私たちは、Shift-Left、DevOps、継続的インテグレーション(CI)、継続的デリバリー(CD)などの特定の用語について知る必要があります。
このチュートリアルでは、GroovyとGradleについて、それぞれGradleビルドタスクの作成とプロジェクトのビルドに使用する方法について学習します。 Groovyは多面的な言語であり、Javaプラットフォームの構文は簡潔で、使い慣れており、使いやすく、ビルドおよび自動化タスクの作成に使用できます。
この言語は、開発者のワークフローをCI / CDパイプラインに統合する際に使用される一般的なツールの1つであるGradleとうまく調和しています。
このチュートリアルでは、Java開発者向けのGradleについて説明します。それがどのように機能するかについての詳細が含まれています。 Gradleを使用してJavaで記述されたソースコードを構築し、任意のプラットフォームにデプロイする方法。
ほとんどのIDEにプラグインを提供し、ソフトウェアをより迅速に提供しやすくします。上記の概念を学ぶ旅に沿って私たちに従うために、あなたがのリポジトリを見ればそれは素晴らしいでしょう サンプルプロジェクト Githubで作成したものです。
学習内容:
- システム要件と前提条件
- Groovyで最初のプログラムを書く– Hello World
- Groovy言語の基礎
- Gradleとは何ですか?
- Gradleを使用することの特徴と利点
- Gradleプロジェクトをビルドする
- Gitアクションを使用してGradleビルドを自動化する
- 結論
- 推奨読書
システム要件と前提条件
このセクションには、IDE – IntelliJIDEAおよびJavaDevelopment Kit(JDK)をインストールする手順が含まれています。最初のビルドタスクの作成に向けてスピードを上げるためのGroovy言語の基本概念の詳細は、コードスニペットの助けを借りて説明されています。
IntelliJIDEAをインストールする
Javaプロジェクトを作成するためのIDE(統合開発環境)をインストールします。このチュートリアルでは、IntelliJ IDEA(Community Edition)を使用します。それぞれのリンクをたどって、Windows / Mac / Linuxにダウンロードしてインストールしてください。
ウィンドウズ: ここをクリック
マック: ここをクリック
Linux: ここをクリック
JDKのインストールとセットアップ
JDKをダウンロード 。手順を完了するには、RedHatアカウントにサインアップする必要があります。ダウンロードしたら、セットアップを実行してWindowsPCにインストールします。インストールしたら、コマンドプロンプトを開き、以下のコマンドを実行して、機能しているかどうかを確認します。
以下のコマンドを使用して、JDKがインストールされているかどうかを確認できます。
D: softwaretestinghelp> where java
D: softwaretestinghelp> where javac
次に、インストールされているJDKをIDEで構成しましょう。 IntelliJ IDEAでプラットフォーム設定を開き、以下に示す手順に従ってJDKを追加します。このJDKは、このIDEを使用して作業するすべてのプロジェクトに適用できることに注意してください。
アニメを無料で視聴できるアニメサイト
ステップ1: 画像に示すように、プラットフォーム設定でダウンロードしたJDKをSDKに追加します。
ステップ2: プロジェクトSDKを更新する 画像に示されているようにプロジェクト設定で
構成された設定を適用した後、IDEの小さな緑色のハンマーアイコンを使用してプロジェクトを一度ビルドしてください。
サンプルプロジェクトを設定する
プロジェクトを開始するには2つの方法があります。プロジェクトのzipファイルをGithubプロジェクトページからダウンロードしてIntellijIDEAにGradleプロジェクトとしてインポートするか、Githubリポジトリからプロジェクトのクローンを作成します。
Githubからプロジェクトのクローンを作成する手順を以下に示します。
デスクトップのショートカットアイコンをダブルクリックしてIDEを開きます。すでに開いている場合は、既存のプロジェクトをすべて閉じてください。 GitプラグインはデフォルトでIntelliJIDEAにバンドルされていることに注意してください。したがって、インストールしないでください。
ステップ1: IDEのようこそ画面で、をクリックします バージョン管理から取得 。
ステップ2: 提供する GithubリポジトリのURL クローンをクリックします。
ステップ3: クリック はい チェックアウトファイルプロンプトが表示されたとき。
ステップ4: バックグラウンドプロセスが終了するのを待ち、出力を確認します。
ステップ5: 折りたたまれたプロジェクトペインをクリックして、エクスプローラーでプロジェクト構造を確認します。
C ++でのマージソート
Groovyで最初のプログラムを書く– Hello World
プロジェクトで、というGradleビルドファイルを開きます。 build.gradle IDEのファイルエクスプローラーを使用して、ファイルの最後に以下のコードを記述します。
task helloWorld { doLast { println('Hello, World!') } }
次に、タスクの再生アイコンのコンテキストメニューで(実行)をクリックして最初のタスクを実行し、の出力を確認します。 println Groovyの組み込みメソッド。使用できます 「CTRL + SHIFT + F10」 同じように。 (下の画像を参照してください)
出力は、上記のようなものになります。
Groovy言語の基礎
Groovyで最初のプログラムを作成する方法を学習したので、言語の基本を加速して学習できます。このセクションでは、変数名、構文、演算子、メソッド/関数/クロージャなどの概念について説明します。
また、プロジェクトのプロパティへのアクセスや、別のプロジェクトで記述されたクロージャ/関数のインポートなど、プロジェクトの観点からより関連性の高い概念についても説明します。 build.gradle ファイル。
以下に示すコードスニペットとコメントを観察して、言語のさまざまな概念について学習してください。このコードスニペットは、Groovyの概念の簡単なウォークスルーと改訂に非常に便利です。
// Primer on Groovy def var1 = 'var1' // A string variable declared and assigned outside a closure/function def var2 = 4 // An integer // Both of the above given variables are of type Object task task1 { doLast { println('Hello, World!') // A single line comment /* A Multi line comment Print a stored variable. Strings can be concatenated. Parentheses are not mandatory */ println var1 + ' is my variable ' println var1 + 2 // adding a digit to a string - No string conversion required. // operators for strings and numbers println(var2 + 3) def var3 = var2 + 2 // type of var3 is integer and var2 and var1 are Objects println(var3 * var2) // multiplication print(var3 / var2 + '
') // division prints float and observe the concatenation of new line '
' def mylist = (1, 2, 3) // creating a list // for loop on list items for (def i=0; i <= mylist.size() -1 ; i++){ // loop using for println(mylist(i)) } // While loop on list items def i=0 while (i<=mylist.size() - 1) { println(mylist(i)) i++ } } }
両方のループで、リストにゼロベースのインデックスがあることに注意してください。詳細については、 Groovy 。
それでは、Gradleについて学び、タスクを実行する方法を見てみましょう。
Gradleとは何ですか?
ビルド自動化システムです。複数の言語で書かれたプロジェクトの構築をサポートします。このチュートリアルでは、Javaを使用しています。このセクションでは、コマンドラインからGradleコマンドを実行する方法について説明します。サンプルプロジェクトの構築、テスト、および展開に使用します。
Gradleの依存関係
オープンソースソフトウェアプロジェクトに依存関係をインストールすることがいかに重要かをすでにご存知かもしれません。 Gradleは、Maven、Jcenter、Googleなどのパブリックリポジトリへの依存関係を検索できます。
これらのリポジトリに言及する build.gradle 以下に示すようなファイル:
repositories { mavenCentral() jcenter() google() }
次に、以下に示すように、コンパイル時の依存関係について説明します。
dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' // https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java compile group: 'org.seleniumhq.selenium', name: 'selenium-java', version: '3.141.59' }
上記の依存関係は自動的にダウンロードされ、GradleプラグインによってプロジェクトのCLASSPATHに含まれます。 IDEのプロジェクトエクスプローラーでダウンロードした依存関係を確認します。
以下のコマンドを使用して、Gradleのバージョンを確認してください。
Gradleを使用することの特徴と利点
以下に、組織内のDevOpsの一部としてGradleを簡単に標準化および採用するのに役立つ機能の一部を示します。
- Groovyと呼ばれるDSLベースの言語を使用します。 XMLよりもGroovyでビルドタスクを作成する方が簡単です。さらに、XMLは扱いにくく、読みにくいものです。ただし、Groovyは習得と読み取りが簡単です。
- モノリシックアーキテクチャとマイクロサービスアーキテクチャの両方に基づくプロジェクトの作成ビルドをサポートします。
- ドキュメント、APIなどの複数のアーティファクトを作成するために使用できます。実装jarなどを作成し、同じビルドの一部として公開します。
- ビルドの一部として相互依存タスクを順序付けるための非常に強力な言語構造があります。
チームがソフトウェアをより高品質でパッケージ化しながらビルドをカスタマイズできるようにする機能は他にもたくさんあります。機能の詳細が記載されています ここに 。
それでは、先に進んでGradleビルドタスクを実行しましょう。
Gradleタスクを実行する
プロジェクトのルートディレクトリで以下に示すコマンドを実行して、task1というビルドタスクを実行します。
D: softwaretestinghelp gitrepo>。 gradlew.bat task1
以下のように出力を確認してください。
Gradleプロジェクトをビルドする
このセクションでは、プロジェクトの構造を確認し、そのさまざまなコンポーネントを理解して、プロジェクトを構築します。
サンプルプロジェクトの構造
議論中のサンプルプロジェクトには src 2つのメインディレクトリ(フォルダ)を持つフォルダ。メインとテスト。メインディレクトリには、HelloWorldと呼ばれるサンプルコマンドラインアプリケーションに関連するJavaソースコードがあります。
HelloWorldクラスには2つのメソッドがあります。つまり、指定された引数のリストから最初の引数を出力するmainメソッドと、2番目の引数の最初の3文字と連結された最初の引数を出力するmethod1メソッドです。
テストフォルダーには、アプリケーションで上記のメソッドをテストするためのテストを含むJUnitテストクラスがあります。これらのテストのソースコードを確認してください。
サンプルプロジェクトには、Gradleラッパーフォルダーもあります。ビルドタスクの実行中は、前述のGradleラッパーバージョンを使用する必要があります。
Gradleのバージョンは非常に重要であり、開発者がコードを共有したい場合は常に、プロジェクトファイルと一緒にラッパーを共有することが有益です。ラッパーが宣言されたバージョンのGradleを自動的にダウンロードするため、多くの時間を節約できます。
ビルドタスクの例
コードの文書化は、開発者の最も重要な属性の1つと見なされています。ドキュメントを共有するのは通常の方法です html フォーマット。 Gradleは生成に役立ちます javadocs に html プロジェクトをフォーマットします。以下のコマンドを使用してjavadocsを生成できます。
D: softwaretestinghelp gitrepo>。 gradlew.bat javadoc
確認してください javadoc プロジェクトのビルドディレクトリの下にあり、下の画像に示すような結果が表示されます。
に従ってください javadoc Javaドキュメントの作成中にこのリンクで提供されるスタイルガイド。
それでは、build.gradleファイルを変更して、テストリソースのドキュメントも生成しましょう。
以下に示すスニペットでbuild.gradleファイルを更新します
javadoc { classpath += sourceSets.test.compileClasspath source += sourceSets.test.allJava }
もう一度Gradlejavadocコマンドを実行して、メインソースとテストソースのドキュメントを生成します。
Gradleビルドタスクの詳細を見ることができます ここに 。
より多くのGradleタスクを知るためのコマンドを以下に示します。
D:softwaretestinghelpgitrepo> .gradlew.bat tasks
それでは、プロジェクトをビルドしましょう。
Gradleプロジェクトを構築する
コマンドラインからサンプルプロジェクトをビルドするには、以下の手順に従います。
- プロジェクトパスを変更します。
- 以下のコマンドを使用してプロジェクトをビルドします。
ただし、IDEの小さなハンマーアイコンをクリックしてプロジェクトをビルドすることもできます。
D:softwaretestinghelpgitrepo> .gradlew.bat build
buildコマンドの出力は以下のようになります。
ビルド実行結果の失敗は、このチュートリアルの目的のために意図されたものであり、無視することができます。
このビルドの一部として実行されたテストの結果を確認したい場合は、次の画像に示すようにレポートフォルダーを確認できます。
結果を確認するには、ブラウザでindex.htmlファイルを開きます。
Gitアクションを使用してGradleビルドを自動化する
開発者は、運用チームと協力するために、プロジェクトを構築、テスト、公開するためのワークフローを設定する必要があります。
さらに、自分たちで環境を設定することは困難な作業になる可能性があり、私たちの生産性に影響を与える可能性があります。 DevOpsの新しい文化の出現により、ビルドの失敗から生じる課題を減らすためにワークフローを自動化する必要があります。
一方、地理的に分散している開発者とのソフトウェアプロジェクトでは、GitなどのSCMソフトウェアの助けを借りてコラボレーションする必要があります。
GithubActionsに感謝します。これで、作成したGithubリポジトリに追加のタブが表示されます。開発ワークフローを作成して、push、release、pull_requestなどのGithubイベントで実行できます。これは、開発者コミュニティにCI / CDのパワーを与えるという点で革新的です。
でGitアクション構成を開きます .github /ワークフロー/gradle.yml プロジェクト内のファイル。 Windowsでプロジェクトを開発しており、GitActionsでubuntu_latestでテストしていることに注意してください。
最高の無料DVDリッピングソフトウェアウィンドウ
Github Actionsには、コミュニティを活用したワークフローもあり、これを活用して、プロジェクトを顧客に提供する速度を上げることができます。ビルドのステータスに基づいて、プロジェクトをリリースするかどうかを決定できます。サンプルプロジェクトのリポジトリのプレリリースの例を示しました。
オプションの演習
以下に、試してみる手順の一部を示します。
- Githubに新しいリポジトリを作成します。
- gradle_sampleプロジェクトに新しいリモートの参照を追加します。
- コマンドを使用して、変更を新しいリポジトリに公開します。
- GitActionsでGradleビルドの結果を確認します。
結論
Gradleは、LinkedIn、Adobe、Netflixなどの企業のチームで使用されており、習得するのに最適なツールです。 Gradleでの作業は、MavenやAntなどの他のビルドツールでの作業よりもはるかに簡単です。
最近では、スピードと敏捷性がすべてです。 GradleとGroovyを学ぶことで、DevOpsの原則をより簡単に採用することができます。
要約すると、Gradleプロジェクトの作成、Groovyでのビルドタスクの作成、およびIDEとGradleビルドコマンドの両方を使用した開発中のGradleラッパーを使用したタスクの実行に関する概念について説明しました。
また、ubuntu_latestなどの別のターゲットプラットフォームでビルドをテストしました。プロジェクトのリリースに関連する決定を下すのに役立つビルドステータスで使用できます。
Selenium Webdriverを使用している自動化エンジニアの場合は、Gradleを使用したSeleniumプロジェクトの構成とセットアップに関する次のチュートリアルを必ずお読みください。
このチュートリアルがGradleConceptsに関する知識を深めることを願っています!!
推奨読書
- GradleとMavenおよびMavenプラグイン
- SeleniumでGradleプロジェクトを作成する方法
- Spockチュートリアル:SpockとGroovyを使用したテスト
- SoapUIで基本的なGroovyスクリプトを作成する方法-SoapUiチュートリアル#6
- SoapUI Groovyスクリプトでプロパティを使用する方法-SoapUIチュートリアル#7
- 高度なSoapUIGroovyスクリプトの概念を学ぶ-SoapUIチュートリアル#9
- SoapUI Groovyスクリプトで例外を処理する方法– SoapUIチュートリアル#11
- Selenium用のMavenビルド自動化ツールとMavenプロジェクトセットアップの使用-Seleniumチュートリアル#24