So far we've only talked about how to use Gradle to build a project component
of a single deliverable output.
But builds rarely stay so simple.
A Gradle project can have any number of sub projects,
each of which also has their own sub projects.
Every multi project build also has a root project.
Even if that root project is the container for its subprojects.
You'll generally create a subproject in order to move some reusable
functionality into a library.
That way the library can be used by other projects, and also so
Gradle can determine that the library and
the app that depends on it should be built together.
A Gradle multi-project build is configured in a settings decorative file
in the root of your project.
If you're creating an Android app,
using Android Studio this file's automatically generated for you.
In fact, every Android project created by Android Studio
is a Gradle multi project by default.
Note, Android Studio refers to sub projects as modules, but
we'll use the two terms interchangeably.
Lets check out an example.
حتى الآن لم نتحدث سوى عن طريقة استخدام Gradle لبناء مكون مشروع
.لمخرجة واحدة قابلة للتسليم
.ولكن نادرًا ما تبقى البنايات بهذه البساطة
حيث يمكن لمشروع Gradle أن يكون لديه ,أي عدد من المشاريع الفرعية
وقد يكون لكل منها .مشاريعها الفرعية أيضًا
ولكل بنية مشروع متعددة .مشروع جذر أيضًا
حتى إن كان مشروع الجذر هذا هو .محتوى مشاريعه الفرعية
وبصورة عامة، ستعملون على إنشاء subproject لكي تنقلوا بعضًا من الوظائف
.القابلة لإعادة الاستخدام إلى المكتبة
ويمكن بهذه الطريقة استخدام المكتبة من قبل المشاريع الأخرى،ويمكن أيضًا لبرنامج
Gradle أن يحدد ما إذا كانت المكتبة
والتطبيق الذي يعتمد عليها .يجب بناؤهما معًا
ويتم تكوين بنية Gradle متعددة المشاريع في ملف تزيين الإعدادات
.في جذر المشروع
،وإذا كنتم تنشئون تطبيق Android
باستخدام برنامج Android Studio فإن هذا الملف .يتم توليده تلقائيًا
وفي حقيقة الأمر، فإن كل مشروع Android يتم إنشاؤه ببرنامج Android Studio
.هو بصورة افتراضية مشروع Gradle متعدد
ولاحظوا أن برنامج Android Studio يشير إلى المشاريع الفرعية كوحدات، ولكننا
.سنستخدم كلا المصطلحين بصورة تبادلية
.فلنتحقق من هذا بمثال
Até agora, só falamos sobre como usar o Gradle para compilar um componente de projeto
com apenas um resultado de saída.
Mas, compilações raramente são tão simples.
Um projeto Gradle pode ter vários subprojetos e
cada um deles também têm os próprios subprojetos.
Cada compilação de multiprojeto também tem um projeto raiz.
Mesmo que esse projeto raiz seja o contêiner para seus subprojetos.
Geralmente você criará um subprojeto a fim de mover alguma funcionalidade
reutilizável para a biblioteca.
Dessa forma, a biblioteca pode ser usada por outros projetos, além de
possibilitar que o Gradle determine que a biblioteca e
o aplicativo que depende dela devam ser compilados em conjunto.
Uma compilação Gradle de multiprojeto é configurada em um arquivo de configurações decorativas
na raiz de seu projeto.
Se você estiver criando um aplicativo do Android
usando o Android Studio, esse arquivo é gerado automaticamente para você.
Na verdade, cada projeto do Android, criado pelo Android Studio,
é um multiprojeto Gradle por padrão.
Nota, o Android Studio refere-se a subprojetos como módulos, mas
usaremos os dois termos alternadamente.
Vamos conferir um exemplo.
到目前为止，我们只介绍了 如何使用 Gradle 来构建
单个可交付输出的项目组件。
但构建不会一直这么简单。
Gradle 项目可能具有 任意数量的子项目，
每个子项目还有 各自的子项目。
每个多项目构建 还有根项目，
即使该根项目 是其子项目的容器。
通常，您会创建一个子项目 以将一些可重复使用的
功能移到库中。
这样，其他项目就可以使用 该库，而且
Gradle 可以确定 库以及与库相关的
应用 应该一起构建。
Gradle 多项目构建在 项目根目录中的设置
修饰性文件中配置。
如果您要创建一个 Android 应用，
使用 Android Studio 时，系统会 自动为您生成此文件。
实际上，Android Studio 创建 的每个 Android 项目
默认都是 Gradle 多项目。
请注意，Android Studio 是指 与模块一样的子项目，但
我们会交替使用这两个词。
我们来看一个示例。