<commit_before>[[getting-started]]
= Getting started

[partintro]
--
If you're just getting started with Spring Boot, or 'Spring' in general, this is the section
for you! Here we answer the basic "`what?`", "`how?`" and "`why?`" questions. You'll
find a gentle introduction to Spring Boot along with installation instructions.
We'll then build our first Spring Boot application, discussing some core principles as
we go.
--


[[getting-started-introducing-spring-boot]]
== Introducing Spring Boot
Spring Boot makes it easy to create stand-alone, production-grade Spring based
Applications that you can "`just run`". We take an opinionated view of the Spring
platform and third-party libraries so you can get started with minimum fuss. Most Spring
Boot applications need very little Spring configuration.

You can use Spring Boot to create Java applications that can be started using `java -jar`
or more traditional war deployments. We also provide a command line tool that runs
"`spring scripts`".

Our primary goals are:

* Provide a radically faster and widely accessible getting started experience for all
Spring development.
* Be opinionated out of the box, but get out of the way quickly as requirements start to
diverge from the defaults.
* Provide a range of non-functional features that are common to large classes of projects
(e.g. embedded servers, security, metrics, health checks, externalized configuration).
* Absolutely no code generation and no requirement for XML configuration.



[[getting-started-system-requirements]]
== System Requirements
By default, Spring Boot {spring-boot-version} requires http://www.java.com[Java 7] and
Spring Framework {spring-version} or above. You can use Spring Boot with Java 6 with some
additional configuration. See <<howto.adoc#howto-use-java-6>> for more details.

Explicit build support is provided for Maven (3.2+), and Gradle 2 (2.9 or later) and 3.

|===
|Build Tool |Version

|Maven
|3.2+

|Gradle
|[2.9, 3.x]

|===

TIP: Although you can use Spring Boot with Java 6 or 7, we generally recommend Java 8 if
at all possible.

=== Servlet containers
The following embedded servlet containers are supported out of the box:

|===
|Name |Servlet Version |Java Version

|Tomcat 8
|3.1
|Java 7+

|Tomcat 7
|3.0
|Java 6+

|Jetty 9.3
|3.1
|Java 8+

|Jetty 9.2
|3.1
|Java 7+

|Jetty 8
|3.0
|Java 6+<commit_msg>Polish "Add table for supported build tools"<commit_after>[[getting-started]]
= Getting started

[partintro]
--
If you're just getting started with Spring Boot, or 'Spring' in general, this is the section
for you! Here we answer the basic "`what?`", "`how?`" and "`why?`" questions. You'll
find a gentle introduction to Spring Boot along with installation instructions.
We'll then build our first Spring Boot application, discussing some core principles as
we go.
--


[[getting-started-introducing-spring-boot]]
== Introducing Spring Boot
Spring Boot makes it easy to create stand-alone, production-grade Spring based
Applications that you can "`just run`". We take an opinionated view of the Spring
platform and third-party libraries so you can get started with minimum fuss. Most Spring
Boot applications need very little Spring configuration.

You can use Spring Boot to create Java applications that can be started using `java -jar`
or more traditional war deployments. We also provide a command line tool that runs
"`spring scripts`".

Our primary goals are:

* Provide a radically faster and widely accessible getting started experience for all
Spring development.
* Be opinionated out of the box, but get out of the way quickly as requirements start to
diverge from the defaults.
* Provide a range of non-functional features that are common to large classes of projects
(e.g. embedded servers, security, metrics, health checks, externalized configuration).
* Absolutely no code generation and no requirement for XML configuration.



[[getting-started-system-requirements]]
== System Requirements
By default, Spring Boot {spring-boot-version} requires http://www.java.com[Java 7] and
Spring Framework {spring-version} or above. You can use Spring Boot with Java 6 with some
additional configuration. See <<howto.adoc#howto-use-java-6>> for more details.

Explicit build support is provided for the following build tools:

|===
|Build Tool |Version

|Maven
|3.2+

|Gradle
|[2.9, 3.x]
|===

TIP: Although you can use Spring Boot with Java 6 or 7, we generally recommend Java 8 if
at all possible.

=== Servlet containers
The following embedded servlet containers are supported out of the box:

|===
|Name |Servlet Version |Java Version

|Tomcat 8
|3.1
|Java 7+

|Tomcat 7
|3.0
|Java 6+

|Jetty 9.3
|3.1
|Java 8+

|Jetty 9.2
|3.1
|Java 7+

|Jetty 8
|3.0
|Java 6+
{'fraction_non_alphanumeric': 0.082945408379179, 'fraction_numerical': 0.01523487092678798, 'mean_word_length': 4.541617819460727, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 7, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4936176', 'n_tokens_mistral': 1390, 'n_tokens_neox': 1295, 'n_words': 669}