Bird
Raised Fist0
Kotlinprogramming~5 mins

Project structure and build basics in Kotlin - Cheat Sheet & Quick Revision

Choose your learning style10 modes available
Recall & Review
beginner
What is the purpose of the src/main/kotlin directory in a Kotlin project?
It holds the main Kotlin source code files that make up the application logic.
Click to reveal answer
beginner
What file typically defines the build configuration in a Kotlin project using Gradle?
The build.gradle.kts file defines dependencies, plugins, and build tasks.
Click to reveal answer
beginner
Why do Kotlin projects often have a src/test/kotlin directory?
It contains test code to verify that the main application code works correctly.
Click to reveal answer
intermediate
What is the role of the gradlew script in a Kotlin project?
It runs Gradle tasks using the project's specified Gradle version, ensuring consistent builds.
Click to reveal answer
beginner
What does the dependencies block in build.gradle.kts do?
It lists libraries and tools the project needs to compile and run.
Click to reveal answer
Where should you put your Kotlin source files in a standard Gradle project?
Asrc/main/kotlin
Bsrc/resources
Cbuild/libs
Dsrc/test/resources
Which file controls the build process in a Kotlin Gradle project?
Abuild.gradle.kts
Bsettings.gradle
Cgradlew.bat
DREADME.md
What is the purpose of the src/test/kotlin folder?
ATo store resource files
BTo store compiled classes
CTo store test code
DTo store build scripts
What does the Gradle wrapper (gradlew) ensure?
AFaster compilation
BConsistent Gradle version across machines
CAutomatic code formatting
DRunning tests only
In build.gradle.kts, where do you specify external libraries?
Arepositories block
Bplugins block
Ctasks block
Ddependencies block
Describe the typical folder structure of a Kotlin project using Gradle and explain the purpose of each main folder.
Think about where your code, tests, and build settings live.
You got /4 concepts.
    Explain how the Gradle build system works in a Kotlin project and why the Gradle wrapper is useful.
    Focus on build configuration and consistent environment.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which folder in a typical Kotlin project contains the main source code files?
      easy
      A. resources/main
      B. src/test/kotlin
      C. build/libs
      D. src/main/kotlin

      Solution

      1. Step 1: Understand standard Kotlin project folders

        The src/main/kotlin folder is where the main Kotlin source files are placed.
      2. Step 2: Differentiate from other folders

        src/test/kotlin is for test code, build/libs is for compiled output, and resources/main is for resource files.
      3. Final Answer:

        src/main/kotlin -> Option D
      4. Quick Check:

        Main source code folder = src/main/kotlin [OK]
      Hint: Main code is always under src/main/kotlin folder [OK]
      Common Mistakes:
      • Confusing test folder with main source folder
      • Thinking build output folders contain source code
      • Mixing resource folders with source code folders
      2. Which file is commonly used to define build instructions in a Kotlin project using Gradle?
      easy
      A. settings.gradle
      B. build.gradle.kts
      C. gradle.properties
      D. manifest.xml

      Solution

      1. Step 1: Identify Gradle build script files

        Gradle uses build.gradle.kts (Kotlin DSL) or build.gradle (Groovy DSL) to define build instructions.
      2. Step 2: Differentiate from other Gradle-related files

        settings.gradle configures multi-project builds, gradle.properties holds properties, and manifest.xml is unrelated.
      3. Final Answer:

        build.gradle.kts -> Option B
      4. Quick Check:

        Build instructions file = build.gradle.kts [OK]
      Hint: Build scripts are named build.gradle.kts for Kotlin DSL [OK]
      Common Mistakes:
      • Confusing settings.gradle with build.gradle.kts
      • Thinking gradle.properties contains build logic
      • Mixing XML files with Gradle scripts
      3. Given this Gradle build snippet, what will be the output directory for compiled Kotlin classes?
      kotlin {
          jvmToolchain(17)
      }
      
      tasks.withType(org.jetbrains.kotlin.gradle.tasks.KotlinCompile).configureEach {
          kotlinOptions.jvmTarget = "17"
      }
      medium
      A. build/classes/kotlin/main
      B. src/main/kotlin
      C. build/libs
      D. out/production

      Solution

      1. Step 1: Understand Gradle default output folders

        By default, Kotlin compiled classes go to build/classes/kotlin/main for the main source set.
      2. Step 2: Differentiate source and output folders

        src/main/kotlin is source code, build/libs holds packaged jars, and out/production is not standard for Gradle Kotlin projects.
      3. Final Answer:

        build/classes/kotlin/main -> Option A
      4. Quick Check:

        Compiled classes output = build/classes/kotlin/main [OK]
      Hint: Compiled classes go under build/classes/kotlin/main by default [OK]
      Common Mistakes:
      • Confusing source folder with output folder
      • Thinking build/libs holds class files instead of jars
      • Assuming non-standard output folders
      4. You see this error when running Gradle: Could not find method kotlin() for arguments. What is the likely cause?
      medium
      A. The Kotlin plugin is not applied in build.gradle.kts
      B. The source folder is missing
      C. The JVM target version is invalid
      D. The Gradle wrapper is outdated

      Solution

      1. Step 1: Understand the error message context

        The error means Gradle does not recognize the kotlin {} block, usually because the Kotlin plugin is missing.
      2. Step 2: Check common causes

        Missing plugins { kotlin("jvm") version "x.y.z" } causes this error. Source folder or JVM target issues cause different errors. Outdated Gradle wrapper usually causes version incompatibility errors.
      3. Final Answer:

        The Kotlin plugin is not applied in build.gradle.kts -> Option A
      4. Quick Check:

        Missing Kotlin plugin causes kotlin() method error [OK]
      Hint: Check if Kotlin plugin is applied when kotlin() method errors occur [OK]
      Common Mistakes:
      • Assuming source folder missing causes this error
      • Blaming JVM target version without checking plugin
      • Ignoring plugin application in build script
      5. You want to add a new resource folder to your Kotlin project for configuration files. Where should you place it to follow standard Gradle project structure?
      hard
      A. src/resources/main
      B. resources/config
      C. src/main/resources
      D. config/resources

      Solution

      1. Step 1: Recall standard resource folder location

        Gradle expects resource files in src/main/resources to include them in the build output.
      2. Step 2: Differentiate from incorrect folder structures

        Folders like resources/config, src/resources/main, or config/resources are not standard and won't be automatically included.
      3. Final Answer:

        src/main/resources -> Option C
      4. Quick Check:

        Resource files go under src/main/resources [OK]
      Hint: Put resource files in src/main/resources for Gradle to find them [OK]
      Common Mistakes:
      • Placing resources outside src/main folder
      • Using non-standard folder names
      • Not including resources in build output
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard