How can I setup Gradle sub project?
To setup a `Gradle` subproject in your main project, you can follow these steps:

1. Create a `Settings.gradle` file in the root directory of your main project. In this file, you will declare the subproject.
2. Create a `build.gradle` file in the root directory of the subproject. This is where you will define the project's dependencies, plugins, and other settings specific to the subproject.
3. In the `build.gradle` file of the main project, add a `subprojects` block and list the subprojects that you want to include.
4. In the `build.gradle` file of the subproject, declare any dependencies and plugins that are unique to the subproject.

Here's an example code for the `Settings.gradle` and `build.gradle` files:

`Settings.gradle`:

```ruby
rootProject.name = 'ParentProject'
include 'subproject'
```
`build.gradle` (in the subproject):

```kotlin
apply plugin: 'java'

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
}

sourceCompatibility = JavaVersion.VERSION_14
targetCompatibility = JavaVersion.VERSION_14

jar {
    manifest {
        attributes 'Main-Class': 'com.example.SubprojectApplication'
    }

    from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
}
```
In this example, `subproject` is the name of the subproject. In the subproject's `build.gradle` file, the `jar` task is used to create an executable jar file that includes the subproject's dependencies and source code.
Can you explain more about what Gradle is and how I can use it?