Gradle相关的语法

Gradle相关的语法

1. gradle语法:

前面已经说过来gradle相关的创建,使用,和优缺点等,今天会进一步了解一些重要语法可以让我们编写gralde

1.1 定义构建脚本依赖的仓库

示例:

groovy 复制代码
buildscript{
 repositores{
        maven{
         url "https://plugins.gradle.org/m2/"
        }
        maven{
	     url "http://your maven address"
         allowInsecureProtocol true
         metadataSource{
               mavenPom()
               artifact()
}    
}
mavenCentral()
}
dependencies{
  classpath "foundation:gradle-tomcat-plugin:2.7.1"
  ...
}
}

这里定义了三个仓库源:

  • 第一个maven是指向了Gradle插件中心,用来查找和安装gradle官网插件
  • 第二个是指向了自定义的Maven仓库地址,并且允许使用不安全的Http协议。metadataSource配置确保了从改仓库获取数据时,同时读取pom.xml文件和实际的jar文件
  • mavenCentral()是默认的中央远程仓库,包含了大量的开源库和框架

dependencies 定义了构建脚本级别的依赖项:

如,foundation:gradle-tomcat-plugin:2.7.1 添加了Tomcat相关的Gradle插件,用于部署和管理Tomcat服务器上的应用

关于buildscript中dependencies 和depencdencies中的区别:

  1. 作用范围:
  • buildscript 快中的依赖只对构建过程有影响,不会被包含在最终的构建产物中;
  • 主dependencies快中的依赖会影响项目的编译,测试,和运行,并会被包含在构建产物中;
  1. 加载时机:
  • buildscript 块中的依赖在构建脚本执行前就会被加载,确保构建脚本能够访问到所有必须的类库和插件
  • 主dependencies中的依赖在项目编译,测试或运行的时候按需加载
  1. 可见性:
  • buildscript中的依赖对构建脚本可见,但是对项目源代码不可见
  • 主dependencies中的依赖对源代码可见,用于编译和运行项目代码
相关推荐
大耳猫1 天前
【解决】Android Gradle Sync 报错 Could not read workspace metadata
android·gradle·android studio
sean9084 天前
使用 Flutter 遇坑小计
flutter·gradle·卡住·没反应
兮动人5 天前
Gradle与Idea整合
java·ide·gradle·intellij-idea·gradle与idea整合
wangz765 天前
Gradle 中添加生成 jar 报错
kotlin·gradle·jar
cjzcjl8 天前
Android Studio Gradle task栏找不到写好的task
gradle·android studio·task列表
吴同学是个程序员14 天前
【Android】Android Studio 配置国内镜像源
android·ide·gradle·android studio·hosts
bytebeats18 天前
使用Dagger SPI 查找非必要组件依赖项
android·gradle·dagger
帅次25 天前
Flutter DropdownButton 详解
android·flutter·ios·kotlin·gradle·webview
microhex1 个月前
一文了解Gradle 依赖管理(五)- 依赖管理&缓存依赖
缓存·gradle·maven
帅次1 个月前
Flutter TextFormField 完全手册与设计最佳实践
android·flutter·ios·小程序·kotlin·gradle·android studio