diff --git a/README.adoc b/README.adoc index 5d3f176ffe..4e001bf8b3 100755 --- a/README.adoc +++ b/README.adoc @@ -127,7 +127,7 @@ available so you need to build that first since it's not generated by default. $ ./mvnw clean install -pl spring-boot-tools/spring-boot-maven-plugin -Pdefault,full ---- -The documentation also includes auto-generated information about the starter poms. To +The documentation also includes auto-generated information about the starters. To allow this information to be collected, the starter projects must be built first: [indent=0] diff --git a/spring-boot-actuator/README.adoc b/spring-boot-actuator/README.adoc index 34179798aa..7cc3bc981c 100644 --- a/spring-boot-actuator/README.adoc +++ b/spring-boot-actuator/README.adoc @@ -10,8 +10,8 @@ covers the features in more detail. == Enabling the Actuator The simplest way to enable the features is to add a dependency to the -`spring-boot-starter-actuator` "`Starter POM`". To add the actuator to a Maven based -project, add the following "`starter`" dependency: +`spring-boot-starter-actuator` '`Starter`'. To add the actuator to a Maven based +project, add the following '`Starter`' dependency: [source,xml,indent=0] ---- diff --git a/spring-boot-docs/src/main/asciidoc/deployment.adoc b/spring-boot-docs/src/main/asciidoc/deployment.adoc index aeeea35380..ba3b0a14af 100644 --- a/spring-boot-docs/src/main/asciidoc/deployment.adoc +++ b/spring-boot-docs/src/main/asciidoc/deployment.adoc @@ -147,7 +147,7 @@ Javadoc for complete details. TIP: The http://cloud.spring.io/spring-cloud-connectors/[Spring Cloud Connectors] project is a better fit for tasks such as configuring a DataSource. Spring Boot includes -auto-configuration support and a `spring-boot-starter-cloud-connectors` starter POM. +auto-configuration support and a `spring-boot-starter-cloud-connectors` starter. diff --git a/spring-boot-docs/src/main/asciidoc/documentation-overview.adoc b/spring-boot-docs/src/main/asciidoc/documentation-overview.adoc index 53ebc8f876..c810bcae1c 100644 --- a/spring-boot-docs/src/main/asciidoc/documentation-overview.adoc +++ b/spring-boot-docs/src/main/asciidoc/documentation-overview.adoc @@ -68,7 +68,7 @@ got you covered>>. <> | <> | <> | - <> + <> * *Best practices:* <> | <> | diff --git a/spring-boot-docs/src/main/asciidoc/getting-started.adoc b/spring-boot-docs/src/main/asciidoc/getting-started.adoc index 0920b53e3f..1c4455c67d 100644 --- a/spring-boot-docs/src/main/asciidoc/getting-started.adoc +++ b/spring-boot-docs/src/main/asciidoc/getting-started.adoc @@ -119,8 +119,8 @@ OSX Homebrew user try `brew install maven`. Ubuntu users can run Spring Boot dependencies use the `org.springframework.boot` `groupId`. Typically your Maven POM file will inherit from the `spring-boot-starter-parent` project and declare -dependencies to one or more <>. Spring Boot also provides an optional +dependencies to one or more <>. Spring Boot also provides an optional <> to create executable jars. @@ -205,7 +205,7 @@ installed you can follow the instructions at http://www.gradle.org/. Spring Boot dependencies can be declared using the `org.springframework.boot` `group`. Typically your project will declare dependencies to one or more -<>. Spring Boot +<>. Spring Boot provides a useful <> that can be used to simplify dependency declarations and to create executable jars. @@ -544,14 +544,14 @@ text editor for this example. [[getting-started-first-application-dependencies]] === Adding classpath dependencies -Spring Boot provides a number of "`Starter POMs`" that make easy to add jars to your +Spring Boot provides a number of "`Starters`" that make easy to add jars to your classpath. Our sample application has already used `spring-boot-starter-parent` in the `parent` section of the POM. The `spring-boot-starter-parent` is a special starter that provides useful Maven defaults. It also provides a <> section so that you can omit `version` tags for "`blessed`" dependencies. -Other "`Starter POMs`" simply provide dependencies that you are likely to need when +Other "`Starters`" simply provide dependencies that you are likely to need when developing a specific type of application. Since we are developing a web application, we will add a `spring-boot-starter-web` dependency -- but before that, let's look at what we currently have. @@ -643,11 +643,11 @@ dependencies that you have added. Since `spring-boot-starter-web` added Tomcat a Spring MVC, the auto-configuration will assume that you are developing a web application and setup Spring accordingly. -.Starter POMs and Auto-Configuration +.Starters and Auto-Configuration **** -Auto-configuration is designed to work well with "`Starter POMs`", but the two concepts +Auto-configuration is designed to work well with "`Starters`", but the two concepts are not directly tied. You are free to pick-and-choose jar dependencies outside of the -starter POMs and Spring Boot will still do its best to auto-configure your application. +starters and Spring Boot will still do its best to auto-configure your application. **** diff --git a/spring-boot-docs/src/main/asciidoc/howto.adoc b/spring-boot-docs/src/main/asciidoc/howto.adoc index bdb8e60ffd..20175ae34d 100644 --- a/spring-boot-docs/src/main/asciidoc/howto.adoc +++ b/spring-boot-docs/src/main/asciidoc/howto.adoc @@ -885,7 +885,7 @@ classpath to reference Tomcat 7 . ==== Use Tomcat 7 with Maven [[howto-use-tomcat-7-maven]] -If you are using the starter poms and parent you can just change the Tomcat version +If you are using the starters and parent you can just change the Tomcat version property, e.g. for a simple webapp or service: [source,xml,indent=0,subs="verbatim,quotes,attributes"] @@ -932,7 +932,7 @@ dependencies. [[howto-use-jetty-8-maven]] ==== Use Jetty 8 with Maven -If you are using the starter poms and parent you can just add the Jetty starter with +If you are using the starters and parent you can just add the Jetty starter with the required WebSocket exclusion and change the version properties, e.g. for a simple webapp or service: @@ -1335,7 +1335,7 @@ have been applied from the auto-configuration: Spring Boot has no mandatory logging dependency, except for the `commons-logging` API, of which there are many implementations to choose from. To use http://logback.qos.ch[Logback] you need to include it, and some bindings for `commons-logging` on the classpath. The -simplest way to do that is through the starter poms which all depend on +simplest way to do that is through the starters which all depend on `spring-boot-starter-logging`. For a web application you only need `spring-boot-starter-web` since it depends transitively on the logging starter. For example, using Maven: @@ -1438,12 +1438,12 @@ You also need to add `logging.file` to your `application.properties`: [[howto-configure-log4j-for-logging]] === Configure Log4j for logging Spring Boot supports http://logging.apache.org/log4j/2.x[Log4j 2] for logging -configuration if it is on the classpath. If you are using the starter poms for +configuration if it is on the classpath. If you are using the starters for assembling dependencies that means you have to exclude Logback and then include log4j 2 -instead. If you aren't using the starter poms then you need to provide `commons-logging` +instead. If you aren't using the starters then you need to provide `commons-logging` (at least) in addition to Log4j 2. -The simplest path is probably through the starter poms, even though it requires some +The simplest path is probably through the starters, even though it requires some jiggling with excludes, .e.g. in Maven: [source,xml,indent=0,subs="verbatim,quotes,attributes"] diff --git a/spring-boot-docs/src/main/asciidoc/production-ready-features.adoc b/spring-boot-docs/src/main/asciidoc/production-ready-features.adoc index 89638b5e7f..94c5ec02b7 100644 --- a/spring-boot-docs/src/main/asciidoc/production-ready-features.adoc +++ b/spring-boot-docs/src/main/asciidoc/production-ready-features.adoc @@ -19,7 +19,7 @@ unless you enable Spring MVC as well.>> == Enabling production-ready features The {github-code}/spring-boot-actuator[`spring-boot-actuator`] module provides all of Spring Boot's production-ready features. The simplest way to enable the features is to add -a dependency to the `spring-boot-starter-actuator` '`Starter POM`'. +a dependency to the `spring-boot-starter-actuator` '`Starter`'. .Definition of Actuator **** @@ -28,7 +28,7 @@ controlling something. Actuators can generate a large amount of motion from a sm change. **** -To add the actuator to a Maven based project, add the following '`starter`' +To add the actuator to a Maven based project, add the following '`Starter`' dependency: [source,xml,indent=0] diff --git a/spring-boot-docs/src/main/asciidoc/spring-boot-features.adoc b/spring-boot-docs/src/main/asciidoc/spring-boot-features.adoc index 5cfba037a4..6b7b584091 100644 --- a/spring-boot-docs/src/main/asciidoc/spring-boot-features.adoc +++ b/spring-boot-docs/src/main/asciidoc/spring-boot-features.adoc @@ -549,7 +549,7 @@ for specifying hierarchical configuration data. The `SpringApplication` class wi automatically support YAML as an alternative to properties whenever you have the http://www.snakeyaml.org/[SnakeYAML] library on your classpath. -NOTE: If you use '`starter POMs`' SnakeYAML will be automatically provided via +NOTE: If you use '`Starters`' SnakeYAML will be automatically provided via `spring-boot-starter`. @@ -1038,7 +1038,7 @@ http://logging.apache.org/log4j/2.x/[Log4J2] and http://logback.qos.ch/[Logback] case loggers are pre-configured to use console output with optional file output also available. -By default, If you use the '`Starter POMs`', Logback will be used for logging. Appropriate +By default, If you use the '`Starters`', Logback will be used for logging. Appropriate Logback routing is also included to ensure that dependent libraries that use Java Util Logging, Commons Logging, Log4J or SLF4J will all work correctly. @@ -1961,7 +1961,7 @@ any of your JAX-RS resources are packaged as nested jars. [[boot-features-embedded-container]] === Embedded servlet container support Spring Boot includes support for embedded Tomcat, Jetty, and Undertow servers. Most -developers will simply use the appropriate '`Starter POM`' to obtain a fully configured +developers will simply use the appropriate '`Starter`' to obtain a fully configured instance. By default the embedded server will listen for HTTP requests on port `8080`. @@ -2500,7 +2500,7 @@ Here's the algorithm for choosing a specific implementation: * Lastly, if Commons DBCP2 is available we will use it. If you use the `spring-boot-starter-jdbc` or `spring-boot-starter-data-jpa` -'`starter POMs`' you will automatically get a dependency to `tomcat-jdbc`. +'`starters`' you will automatically get a dependency to `tomcat-jdbc`. NOTE: You can bypass that algorithm completely and specify the connection pool to use via the `spring.datasource.type` property. This is especially important if you are running @@ -2922,7 +2922,7 @@ http://redis.io/[Redis] is a cache, message broker and richly-featured key-value Spring Boot offers basic auto-configuration for the https://github.com/xetorthio/jedis/[Jedis] client library and abstractions on top of it provided by https://github.com/spring-projects/spring-data-redis[Spring Data Redis]. There -is a `spring-boot-starter-data-redis` '`Starter POM`' for collecting the dependencies in a +is a `spring-boot-starter-data-redis` '`Starter`' for collecting the dependencies in a convenient way. @@ -2962,7 +2962,7 @@ pooled connection factory by default. http://www.mongodb.com/[MongoDB] is an open-source NoSQL document database that uses a JSON-like schema instead of traditional table-based relational data. Spring Boot offers several conveniences for working with MongoDB, including the -`spring-boot-starter-data-mongodb` '`Starter POM`'. +`spring-boot-starter-data-mongodb` '`Starter`'. @@ -3118,7 +3118,7 @@ Mongo instance's configuration and logging routing. http://neo4j.com/[Neo4j] is an open-source NoSQL graph database that uses a rich data model of nodes related by first class relationships which is better suited for connected big data than traditional rdbms approaches. Spring Boot offers several conveniences for -working with Neo4j, including the `spring-boot-starter-data-neo4j` '`Starter POM`'. +working with Neo4j, including the `spring-boot-starter-data-neo4j` '`Starter`'. @@ -3238,7 +3238,7 @@ documentation]. https://github.com/spring-projects/spring-data-gemfire[Spring Data Gemfire] provides convenient Spring-friendly tools for accessing the http://pivotal.io/big-data/pivotal-gemfire#details[Pivotal Gemfire] data management -platform. There is a `spring-boot-starter-data-gemfire` '`Starter POM`' for collecting the +platform. There is a `spring-boot-starter-data-gemfire` '`Starter`' for collecting the dependencies in a convenient way. There is currently no auto-configuration support for Gemfire, but you can enable Spring Data Repositories with a https://github.com/spring-projects/spring-data-gemfire/blob/master/src/main/java/org/springframework/data/gemfire/repository/config/EnableGemfireRepositories.java[single annotation (`@EnableGemfireRepositories`)]. @@ -3250,7 +3250,7 @@ https://github.com/spring-projects/spring-data-gemfire/blob/master/src/main/java http://lucene.apache.org/solr/[Apache Solr] is a search engine. Spring Boot offers basic auto-configuration for the Solr 5 client library and abstractions on top of it provided by https://github.com/spring-projects/spring-data-solr[Spring Data Solr]. There is -a `spring-boot-starter-data-solr` '`Starter POM`' for collecting the dependencies in a +a `spring-boot-starter-data-solr` '`Starter`' for collecting the dependencies in a convenient way. @@ -3302,7 +3302,7 @@ http://www.elasticsearch.org/[Elasticsearch] is an open source, distributed, real-time search and analytics engine. Spring Boot offers basic auto-configuration for the Elasticsearch and abstractions on top of it provided by https://github.com/spring-projects/spring-data-elasticsearch[Spring Data Elasticsearch]. -There is a `spring-boot-starter-data-elasticsearch` '`Starter POM`' for collecting the +There is a `spring-boot-starter-data-elasticsearch` '`Starter`' for collecting the dependencies in a convenient way. @@ -3372,7 +3372,7 @@ http://cassandra.apache.org/[Cassandra] is an open source, distributed database system designed to handle large amounts of data across many commodity servers. Spring Boot offers auto-configuration for Cassandra and abstractions on top of it provided by https://github.com/spring-projects/spring-data-cassandra[Spring Data Cassandra]. -There is a `spring-boot-starter-data-cassandra` '`Starter POM`' for collecting the +There is a `spring-boot-starter-data-cassandra` '`Starter`' for collecting the dependencies in a convenient way. @@ -3428,7 +3428,7 @@ http://www.couchbase.com/[Couchbase] is an open-source, distributed multi-model document-oriented database that is optimized for interactive applications. Spring Boot offers auto-configuration for Couchbase and abstractions on top of it provided by https://github.com/spring-projects/spring-data-couchbase[Spring Data Couchbase]. -There is a `spring-boot-starter-data-couchbase` '`Starter POM`' for collecting the +There is a `spring-boot-starter-data-couchbase` '`Starter`' for collecting the dependencies in a convenient way. @@ -3554,7 +3554,7 @@ enabled via the `@EnableCaching` annotation. NOTE: If you are using the cache infrastructure with beans that are not interface-based, make sure to enable the `proxyTargetClass` attribute of `@EnableCaching`. -TIP: Use the `spring-boot-starter-cache` "`Starter POM`" to quickly add required caching +TIP: Use the `spring-boot-starter-cache` '`Starter`' to quickly add required caching dependencies. If you are adding dependencies manually you should note that certain implementations are only provided by the `spring-context-support` jar. @@ -4047,7 +4047,7 @@ The Advanced Message Queuing Protocol (AMQP) is a platform-neutral, wire-level p for message-oriented middleware. The Spring AMQP project applies core Spring concepts to the development of AMQP-based messaging solutions. Spring Boot offers several conveniences for working with AMQP via RabbitMQ, including the -`spring-boot-starter-amqp` '`Starter POM`'. +`spring-boot-starter-amqp` '`Starter`'. @@ -4230,7 +4230,7 @@ disable the JTA auto-configuration. [[boot-features-jta-atomikos]] === Using an Atomikos transaction manager Atomikos is a popular open source transaction manager which can be embedded into your -Spring Boot application. You can use the `spring-boot-starter-jta-atomikos` Starter POM to +Spring Boot application. You can use the `spring-boot-starter-jta-atomikos` Starter to pull in the appropriate Atomikos libraries. Spring Boot will auto-configure Atomikos and ensure that appropriate `depends-on` settings are applied to your Spring beans for correct startup and shutdown ordering. @@ -4254,7 +4254,7 @@ property with a different value for each instance of your application. [[boot-features-jta-bitronix]] === Using a Bitronix transaction manager Bitronix is popular open source JTA transaction manager implementation. You can -use the `spring-boot-starter-jta-bitronix` starter POM to add the appropriate Bitronix +use the `spring-boot-starter-jta-bitronix` starter to add the appropriate Bitronix dependencies to your project. As with Atomikos, Spring Boot will automatically configure Bitronix and post-process your beans to ensure that startup and shutdown ordering is correct. @@ -4278,7 +4278,7 @@ property with a different value for each instance of your application. [[boot-features-jta-narayana]] === Using a Narayana transaction manager Narayana is popular open source JTA transaction manager implementation supported by JBoss. -You can use the `spring-boot-starter-jta-narayana` starter POM to add the appropriate +You can use the `spring-boot-starter-jta-narayana` starter to add the appropriate Narayana dependencies to your project. As with Atomikos and Bitronix, Spring Boot will automatically configure Narayana and post-process your beans to ensure that startup and shutdown ordering is correct. @@ -4399,7 +4399,7 @@ caching is enabled. [[boot-features-integration]] == Spring Integration Spring Boot offers several conveniences for working with Spring Integration, including -the `spring-boot-starter-integration` '`Starter POM`'. Spring Integration provides +the `spring-boot-starter-integration` '`Starter`'. Spring Integration provides abstractions over messaging and also other transports such as HTTP, TCP etc. If Spring Integration is available on your classpath it will be initialized through the `@EnableIntegration` annotation. Message processing statistics will be published over JMX @@ -4458,7 +4458,7 @@ Spring Boot provides a number of utilities and annotations to help when testing application. Test support is provided by two modules; `spring-boot-test` contains core items, and `spring-boot-test-autoconfigure` supports auto-configuration for tests. -Most developers will just use the `spring-boot-starter-test` '`Starter POM`' which +Most developers will just use the `spring-boot-starter-test` '`Starter`' which imports both Spring Boot test modules as well has JUnit, AssertJ, Hamcrest and a number of other useful libraries. @@ -4467,7 +4467,7 @@ of other useful libraries. [[boot-features-test-scope-dependencies]] === Test scope dependencies If you use the -`spring-boot-starter-test` '`Starter POM`' (in the `test` `scope`), you will find +`spring-boot-starter-test` '`Starter`' (in the `test` `scope`), you will find the following provided libraries: * http://junit.org[JUnit] -- The de-facto standard for unit testing Java applications. @@ -4498,7 +4498,7 @@ needing to connect to other infrastructure. The Spring Framework includes a dedicated test module for just such integration testing. You can declare a dependency directly to `org.springframework:spring-test` or use the -`spring-boot-starter-test` '`Starter POM`' to pull it in transitively. +`spring-boot-starter-test` '`Starter`' to pull it in transitively. If you have not used the `spring-test` module before you should start by reading the {spring-reference}/#testing[relevant section] of the Spring Framework reference diff --git a/spring-boot-docs/src/main/asciidoc/using-spring-boot.adoc b/spring-boot-docs/src/main/asciidoc/using-spring-boot.adoc index 3fec175e5c..3edf0d6a3f 100644 --- a/spring-boot-docs/src/main/asciidoc/using-spring-boot.adoc +++ b/spring-boot-docs/src/main/asciidoc/using-spring-boot.adoc @@ -209,7 +209,7 @@ the parent. [[using-boot-gradle]] === Gradle -Gradle users can directly import "`starter POMs`" in their `dependencies` section. Unlike +Gradle users can directly import '`starters`' in their `dependencies` section. Unlike Maven, there is no "`super parent`" to import to share some configuration. [source,groovy,indent=0,subs="attributes"] @@ -345,8 +345,9 @@ you don't want to use the `spring-boot-antlib` module. [[using-boot-starter-poms]] -=== Starter POMs -Starter POMs are a set of convenient dependency descriptors that you can include in your +[[using-boot-starter]] +=== Starters +Starters are a set of convenient dependency descriptors that you can include in your application. You get a one-stop-shop for all the Spring and related technology that you need, without having to hunt through sample code and copy paste loads of dependency descriptors. For example, if you want to get started using Spring and JPA for database @@ -389,7 +390,7 @@ or swap specific technical facets: .Spring Boot technical starters include::../../../target/generated-resources/technical-starters.adoc[] -TIP: For a list of additional community contributed starter POMs, see the +TIP: For a list of additional community contributed starters, see the {github-master-code}/spring-boot-starters/README.adoc[README file] in the `spring-boot-starters` module on GitHub. diff --git a/spring-boot-starters/README.adoc b/spring-boot-starters/README.adoc index 7607a20baf..d67e1084a1 100644 --- a/spring-boot-starters/README.adoc +++ b/spring-boot-starters/README.adoc @@ -1,4 +1,4 @@ -= Starter POMs += Starters Spring Boot Starters are a set of convenient dependency descriptors that you can include in your application. You get a one-stop-shop for all the Spring and related technology