再びgradleに会う

  • 概要概要

    gradleの最初の理解||インストール||主な用途

  • Gradleの一般的な理解

    さまざまなソフトウェアリリースチャネル、さまざまな携帯電話モデル、さまざまな依存関係によって引き起こされる面倒な作業はすべて、Gradleによって解決できます。

    Gradleは、相違点、依存関係、コンパイル、パッケージ化、デプロイの管理に役立つビルドツールです...ニーズに合ったビルドロジックを定義し、build.gradle将来の再利用のために中間に書き込むことができます

    Grdleはプログラミング言語でなく、ソフトウェアに実際の機能を実装するのに役立ちません。

  • Antはパッケージングロジックを自動化できます

  • Maven

    mavenパッケージングロジックを自動化できる同僚は、jarパッケージを自動的にダウンロードすることもできます。

    Gradle有能な仕事mavenと有能な仕事の両方ant

    Gradleこれは構成スクリプトであるだけでなく、その背後にあるいくつかの言語です:

    1. Groovy言語
    2. Gradle DSL
    3. Android DSL
  • Gradleの基本構成

    ProjectそしてTaskGradleの2つの基本的な概念次のとおりです。

    • Project、ビルド製品(jarパッケージなど)または実装製品(アプリケーションを本番環境にデプロイする)指します
    • Task、分離できない最小の作業単位を指し、建設作業を行います

    各構造は1つ以上projects構成され、各構造はproject1つ以上で構成されtaskます。

  • Gradleビルドシステムの構成

    すべてのビルドシステムは、複数のビルドファイルで構成されています。

    • Antが構成されてbuild.xml
    • Mavenは構成されてpom.xml
    • メイクが構成されてmakefile
    • Gradleのが構成されてbuild.gradle settings.gradle gradle.properties
      1. build.gradle ビルドスクリプトは、モジュールとコンパイルタスクを定義します。これらは通常、プロジェクトのモジュールに配置されるか、コンパイル構造のグローバル設定としてプロジェクトのルートディレクトリに配置できます。これは必須です。
      2. setting.gradle必須です。マルチプロジェクトビルドを定義するには、設定ファイルを作成し、それをソースコードのルートディレクトリに配置して、含めるプロジェクトを指定する必要があります。
      3. gradle.propertiesビルドプロパティの構成に使用されます。必須ではありません
  • Gradleプラグイン

    Gradleの設計哲学は、すべての便利な機能がGradleプラグインによって提供されるというものです。

    groovyプラグイン。プラグインを拡張し、JavaコンパイルのGroovy依存関係を追加します。

    warプラグインは、実際javaにはプラグインに基づいて拡張され、WARファイルをビルドします。

    Jettyプラグインは実際Warにはプラグインに基づいて拡張され、語順ユーザーはWebアプリケーションを介在するJettyコンテナーに公開します

  • Gradle実行プロセス

    gradle Gradle buildgradleコマンドを実行できます。コマンドは、現在のディレクトリbuild.gradleファイルで呼び出しを検索します。このbuild.gradleファイルは、ビルドスクリプトと呼ばれます。

    # 创建文件build.gradle
    task hello {
          
          
    	doLast {
          
          
    		println 'Hello World!'
    	}
    }
    # 命令行运行
    > gradle -q hello # -q是quiet模式,不产生gradle的日志信息
    Hello World!
    

    ここでは、ビルドスクリプトはbuild.gradle独立した定義taskと呼ばれるがhello、その後、追加actionのコマンドラインを実行しgradle helloGradleのの実行が呼ばれて実行される、のをこれは、いくつか含まれているのGroovyコードをhellotasktaskactionaction闭包closure

    > gradle buildここbuildplugin java、組み込みのタスクtaskgradle cleangradle assemblegradle checkgradle properties同書。

    > gradle compile test # 实现一次调用多个`task`,`compile`, `test`会被依次调用。
    > gradle dist -x test # 命令行选项-x用来排除某些任务
    > gradle --continue # --continue选项,某任务调用失败后继续执行后续任务,以期发现跟多错误
    > -b # -b参数用于选择其他目录的构建文件,且settings.gradle将不会生效
    > -p # -b是指定脚本,-p是指定脚本所在的目录
    > gradle projects # 列出子项目名称列表
    > gradle tasks # 列出项目中所有任务
    > gradle tasks --all # --all 列出项目中所有任务以及任务之间的依赖关系
    > gradle help --task someTask # 显示指定任务的详细信息
    > gradle dependencies # 列出项目的依赖列表
    > gradle dependencyInsight # 查看指定的依赖
    > gradle properties # 获取项目所有属性列表
    > gradle --profile # 收集构建期间的信息并保存到build/reports/profile目录下,以构建时间命名
    > gradle -i # INFO log
    > gradle -d # DEBUG log
    
  • Gradleリポジトリ

    Gradlerepository、さまざまな依存ファイルを1つで見つけます。

    repositoryファイルのコレクションはによって、あるgroupnameversion分類を終えました。

    Gradleではは、など、いくつかの異なる倉庫形態を構文解析することができるmavenivy、そのようなローカルファイルシステムまたはHTTPを使用するなど、倉庫を入力するための様々な方法を理解することができます。

  • プロジェクトのプロパティ||変数

    projectオブジェクトは、標準の属性の数を提供します:projectnamepathdescriptionprojectDirbuildgroupversionant

    Gradleビルドスクリプトには2種類の変数があります

    • ローカル変数(local)、def
    • 拡張変数(extra)。
  • Gradleビルド言語リファレンス

    Gradleスクリプトは構成スクリプトです。

    スクリプトが実行されると、特定のタイプのオブジェクトが構成されます。

  • 参考文献

  1. 知乎:Gradleを一般的な方法で理解する方法は?
  2. Gradleの基本的な使用法(1)2)(3
  3. Gradleユーザーマニュアル
  4. Gradleが開始されました
  5. Javaアプリケーションサンプルの構築

おすすめ

転載: blog.csdn.net/The_Time_Runner/article/details/113000987