Skip to content
Learn Netverks

Lesson

Step 32/36 89% through track

maven-gradle-intro

Maven and Gradle intro

Last reviewed Jun 1, 2026 Content v20260601
Track mode
server_compiled
Means
Compiled runner
Reading
~1 min
Level
intermediate

This lesson

An orientation to the Java track—how the server playground works, core vocabulary, and what you will practice next.

You need a clear map of the Java track so the JVM, compile step, and OOP vocabulary do not feel like magic.

You will apply Maven and Gradle intro in contexts like: Spring Boot APIs, banking systems, Android (with Kotlin), and batch/data pipelines on the JVM.

Write Java with a public class (lessons use Main), click Run on server—the dev runner runs javac then java; fix compile errors from stderr (LEARNING_RUNNER_ENABLED=true). Also read the interview prep blocks.

After HTML fundamentals and basic programming concepts—before or alongside SQL.

Real Java projects rarely use single-file javac. Maven and Gradle manage dependencies, directory layout, tests, and packaging into JARs/WARs.

Maven coordinates

<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-web</artifactId>
  <version>3.2.0</version>
</dependency>

Common commands

  • Maven: mvn test, mvn package
  • Gradle: ./gradlew test, ./gradlew build

Playground simulation

Below prints typical build output concepts—locally you need JDK + Maven/Gradle installed.

Important interview questions and answers

  1. Q: pom.xml vs build.gradle?
    A: Maven XML declarative model; Gradle Groovy/Kotlin DSL with flexible task graph—both resolve from Maven Central.
  2. Q: What is a fat JAR?
    A: Executable JAR bundling dependencies—Spring Boot repackage goal.

Self-check

  1. What file declares Maven dependencies?
  2. Why commit lockfiles or wrapper jars?

Interview tip Lesson completion confidence

Can you explain this lesson in 30 seconds without reading notes?

Not saved yet.

Playground

Runs on the configured server runner (dev: npm run runner with LEARNING_RUNNER_ENABLED=true). Output appears below the editor.

Check yourself

Multiple choice — immediate feedback.

Discussion

Past discussion is visible to everyone. Only logged-in users can post comments and replies.

Starter discussion topics

  • pom.xml purpose?
  • Dependency scope compile?

Sign up or log in to post comments and sync lesson progress across devices.

No discussion yet. Be the first to ask a question.

Jump