settings.gradle(settingsgradle设置常量)
本篇文章给大家谈谈settings.gradle,以及settingsgradle设置常量对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、如何建立与 Android studio和 gradle android 库
- 2、settings.gradle 配置文件和build.gradle不都是配置文件吗
- 3、Android gradle 动态添加模块依赖
- 4、Android Studio的settings.gradle文件
- 5、android studio settings.gradle有多个module
- 6、第九章:配置本地项目依赖
如何建立与 Android studio和 gradle android 库
Gradle 已定义的结构 (即您可以更改底部链接将告诉您如何),是与 Maven 非常相似,如果您曾经使用过它。
Project Root
+-- src
| +-- main (your project)
| | +-- java (where your java code goes)
| | +-- res (where your res go)
| | +-- assets (where your assets go)
| | \-- AndroidManifest.xml
| \-- instrumentTest (test project)
| \-- java (where your java code goes)
+-- build.gradle
\-- settings.gradle
如果你仅有的一个项目,不是需要的 settings.gradle 文件。但是你想要添加更多的中猛辩项目,所以我们需要它。
现在让我们看一看那个 build.gradle 文件。你会需要这个在它 (要添加的 android 工具)
build.gradle
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.3'
}
}
现在我们需要告诉 Gradle 一些 android 系统部件。它是相当简单的。一个基本的那个 (在大多数我情况下的工作方式) 如下所示。我在此块中有一个注释,它将允许我指定的版本名称和代码生成 APK 时。
build.gradle
apply plugin: "android"
android {
compileSdkVersion 17
/*
defaultConfig {
versionCode = 1
versionName = "0.0.0"
}
*/
}
东西我们要想要添加,然而,就没见过的 Gradle 光的人帮助他们使用该项目,而不安装它的方式。
build.gradle
task wrapper(type: org.gradle.api.tasks.wrapper.Wrapper) {
gradleVersion = '1.4'
}
所以现在我们有一个要生成的项目。现在我们要添加其他人。我把它们放在一卖缺个目录中,或许称之为指标或知仔子项目。这是无关紧要的但你需要知道你把它放哪。要告诉 Gradle 项目在哪里你都需要将它们添加到 settings.gradle。
目录结构:
Project Root
+-- src (see above)
+-- subProjects (where projects are held)
| +-- reallyCoolProject1 (your first included project)
| \-- See project structure for a normal app
| \-- reallyCoolProject2 (your second included project)
| \-- See project structure for a normal app
+-- build.gradle
\-- settings.gradle
settings.gradle:
include ':subProjects:reallyCoolProject1'
include ':subProjects:reallyCoolProject2'
您应该确保的最后一件事是subProjects/reallyCoolProject1/build.gradle apply plugin: "android-library" 而不是 apply plugin: "android" 。
像每个 Gradle 项目 (和 Maven) 我们现在需要告诉关于它的依赖性的根项目。这还可以包含任何你想要的正常 Java 依赖。
build.gradle
dependencies{
compile 'com.fasterxml.jackson.core:jackson-core:2.1.4'
compile 'com.fasterxml.jackson.core:jackson-databind:2.1.4'
compile project(":subProjects:reallyCoolProject1")
compile project(':subProjects:reallyCoolProject2')
}
我知道这看起来像很多步骤,但他们是很容易的一旦你这样做一次或两次。这种方式也将允许您可以假设你有没有安装了 Android SDK 的 CI 服务器上生成。
NDK 侧注: 如果您要使用 NDK 你需要的东西喜欢下面。可以在这里找到 build.gradle 文件的示例:
build.gradle
task copyNativeLibs(type: Copy) {
from fileTree(dir: 'libs', include: '**/*.so' ) into 'build/native-libs'
}
tasks.withType(Compile) { compileTask - compileTask.dependsOn copyNativeLibs }
clean.dependsOn 'cleanCopyNativeLibs'
tasks.withType(com.android.build.gradle.tasks.PackageApplication) { pkgTask -
pkgTask.jniDir new File('build/native-libs')
}
[img]settings.gradle 配置文件和build.gradle不都是配置文件吗
根目录下的脚本文件是针对module的全局配置,它的作用域所包含的所有module是通过派庆settings.gradle来配置。app文件夹就是一个棚裂module,如果在当前工程中添加了一个新的module — lib,就需要链羡闭在settings.gralde文件中包含这个新的module。
Android gradle 动态添加模块依赖
Android 开发过程,可能会遇到依赖模块太多,手动的添加修改依赖就会觉得有点麻烦,这个时候可以考虑使用动态添加模块依赖,也是适用像 Jenkins 自动打包构建,就不需要频繁的去修改模块并桥伏依赖,提绝携高构建效率。
1、工程 settings.gradle 动态消胡添加模块工程
2、 app 模块 build.gradle 依赖使用
Gradle dependencies: compile project by relative path
Android studio add external project to build.gradle
Android Studio的settings.gradle文件
Gradle是一个基卜圆于JVM的构建工具,是一款通用祥弊扮灵活的构建工具,支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。
Setting文件可以说是子项目(也可以说是Module)的配置文件,大多数setting.gradle的作用是为了配置子工程,再Gradle多工程是通过工程树表示的。
例如:
在Android studio中指定相应的module能在主谨灶工程当中使用:
项目工程如下:
android studio settings.gradle有多个module
compile
compile是对所有的build type以数羡及favlors都会参与编译并且打包到最终的apk文件中。
Provided
Provided是对所有埋慧的build type以及favlors只在编译时使用,类似eclipse中的external-libs,只参与编译,不打弯毕答包到最终apk。
APK
只会打包到apk文件中,而不参与编译,所以不能再代码中直接调用jar中的类或方法,否则在编译时会报错
Test compile
Test compile 仅仅是针对单元测试代码的编译编译以及最终打包测试apk时有效,而对正常的debug或者release apk包不起作用。
Debug compile
Debug compile 仅仅针对debug模式的编译和最终的debug apk打包
Release compile
Release compile 仅仅针对Release 模式的编译和最终的Release apk打包。
我们需要用的是Provided,这样在写代码的时候可以在Module中正常使用jar中的类,但是要有一个Module以compile的方式依赖这个jar,这样编译的时候只有一个jar编译进apk。
注:使用Provided必须删除compile fileTree(include: ['*.jar'], dir: 'libs') 不然lib下的jar均按照compile方式引入到Module
第九章:配置本地项目依赖
第一步,打开项目结构界面。依次点击左上角的File-Project Structure...
文件结构如图所示:
第二步,导入依赖的项目(作为当前项目的模块)。选择Modules(模块),点击项目目录上方的“+”:
点击"Import Module":
选择你要依赖的项目:
依次选择Import module from external model - Gradle,点击“Finish”
点击“Finish”后,你将看到:
什么也没有?是不是没有导入进来?并不是。只是IDEA目前没有显示出来导入的模块而已。点击OK,然后点击左上角的File-Project Structure...重新进来,你就会看到模块已经被导入进来了。
点击左上角的File-Project Structure...再次进入文件结构界面,可以看到你导入的项目已经作为当前项目的模块:
目前为止,我们只是通知了IDEA我们打算导入一个本地项目作为当前项目的一部分。Gradle还不知道有这回事。因此,我们需要配置Gradle,让其知晓我们的意图。
第三步,配置settings.gradle。找到项目目录下的settings.gradle,双击打开它:
另起一行,填写 include 'XXX' 与 project(':XXX').projectDir = new File(settingsDir,'../XXX/'基颤者) ,其中XXX是你刚才导入的项目模块的项目名字:
如果你洞历导入的项目同时依赖了另一个项目,那么需要把另一个项目的名字也要写在这里。例如我这里当前项目依赖本地项目“JUI”,其本身依赖本地项目“JKit”。因此我要把JKit也一同配置上。
第四步,配置build.gradle。找到项目目录下的build.gradle(Android项目是app目录下的build.gradle):
在dependencies中添加implementation project(":XXX"):
最后,别忘记点击右上方的“大象图标”或者点击“Sync Now”构筑更新gradle:
这样,本地依赖搏薯就配置好了。
关于settings.gradle和settingsgradle设置常量的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。