Conoce a Gradle de nuevo

  • Visión general

    " Primera comprensión de gradle || instalación || uso principal "

  • Comprensión popular de gradle

    Gradle puede resolver el tedioso trabajo causado por diferentes canales de lanzamiento de software, diferentes modelos de teléfonos móviles y diferentes dependencias.

    Gradle es una herramienta de compilación que puede ayudarte a administrar diferencias, dependencias, compilación, empaquetado, implementación ... Puedes definir la lógica de compilación que se adapte a tus necesidades y escribirla en el build.gradlemedio para reutilizarla en el futuro.

    Grdle no es un lenguaje de programación y no puede ayudarlo a implementar ninguna función real en el software.

  • hormiga

    Ant puede automatizar la lógica de empaquetado

  • maven

    mavenLos colegas que pueden automatizar la lógica de empaquetado también pueden descargar paquetes jar automáticamente.

    GradleTanto trabajo mavencapaz como trabajo capaz ant.

    GradleNo es solo un script de configuración, sino varios idiomas detrás de él:

    1. Lenguaje maravilloso
    2. Gradle DSL
    3. DSL de Android
  • La composición básica de Gradle

    ProjectY Taskson los dos conceptos básicos de Gradle :

    • Project, Se refiere a nuestros productos de construcción (como jarpaquetes) o productos de implementación (implementar la aplicación en el entorno de producción)
    • Task, Se refiere a la unidad de trabajo más pequeña que no se puede separar y realiza trabajos de construcción

    Cada construcción está compuesta por uno o más projects, y cada construcción está compuesta por projectuno o más task.

  • La composición del sistema de construcción Gradle

    Cualquier sistema de compilación se compone de varios archivos de compilación:

    • Ant consiste build.xmlen
    • Maven consiste pom.xmlen
    • Hacer consta makefilede
    • Gradle consta build.gradle settings.gradle gradle.propertiesde
      1. build.gradle El script de compilación define un módulo y tareas de compilación, que generalmente se colocan en el módulo del proyecto, o se pueden colocar en el directorio raíz del proyecto como configuración global para la estructura de compilación.
      2. setting.gradleEs necesario. Para definir una compilación multiproyecto, debe crear un archivo de configuración y colocarlo en el directorio raíz del código fuente para especificar qué proyectos incluir.
      3. gradle.propertiesSe usa para configurar propiedades de construcción, no es obligatorio
  • Complemento de Gradle

    La filosofía de diseño de Gradle es que todas las funciones útiles las proporcionan los complementos de Gradle.

    groovyComplemento, que amplía el Javacomplemento y agrega la Groovydependencia de la compilación ;

    warEn realidad, el complemento se javaexpande sobre la base del complemento para crear WARarchivos;

    JettyEl complemento se Warexpande en realidad sobre la base del complemento, y el usuario del orden de palabras publica la aplicación web en un Jettycontenedor intermedio .

  • Proceso de ejecución de Gradle

    Puede ejecutar un comando mediante gradle Gradle build , el gradlecomando busca una llamada en el build.gradlearchivo de directorio actual , este build.gradlearchivo se llama script de compilación.

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

    En este caso, la escritura de la estructura build.gradledefine una organización independiente task, llamada hello, y luego añadió un actionplazo cuando la línea de comandos gradle hello, Gradle ejecución se llama helloel taskque se lleva a cabo taskde action, esta actiones una contiene algunos maravilloso código 闭包closure.

    > gradle buildAquí buildes una plugin javafunción específica integrada task, gradle clean, gradle assemble, gradle check, gradle propertiesibid.

    > 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
    
  • Repositorio de Gradle

    Gradlerepository encontrará varios archivos dependientes en uno .

    repositoryEs una colección de archivos, por group, name, versionla clasificación final.

    Gradle puede analizar varios formularios de almacén diferentes, como maveny ivy, y puede comprender varias formas de ingresar al almacén, como usar el sistema de archivos local o HTTP.

  • Propiedades del proyecto || variables

    projectObjeto proporciona una serie de atributos estándar: project, name, path, description, projectDir, build, group, version, ant.

    Hay dos tipos de variables en el script de compilación de Gradle :

    • Variables locales ( local),def
    • Variables de expansión ( extra).
  • Referencias del lenguaje de compilación de Gradle

    Los scripts de Gradle son scripts de configuración.

    A medida que se ejecuta el script, configura un objeto de un tipo particular.

  • Referencias

  1. Zhihu: ¿Cómo entender Gradle de una manera popular?
  2. El uso básico de Gradle (1) ( 2 ) ( 3 )
  3. Manual de usuario de Gradle
  4. Gradle comenzó
  5. Ejemplo de creación de una aplicación Java

Supongo que te gusta

Origin blog.csdn.net/The_Time_Runner/article/details/113000987
Recomendado
Clasificación