Skip to content

Commit c5ee3c7

Browse files
author
Phillip Webb
committed
Remove duplicate documentation
Remove README files that have been since been migrated to the reference documentation. Also updated remaining markdown files to asciidoctor to save having a mix of different formats. Fixed spring-projectsgh-503
1 parent d0275b4 commit c5ee3c7

File tree

24 files changed

+287
-4418
lines changed

24 files changed

+287
-4418
lines changed

CONTRIBUTING.md CONTRIBUTING.adoc

+63-44
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,68 @@
1-
# Contributing to Spring Boot
1+
= Contributing to Spring Boot
22

33
Spring Boot is released under the non-restrictive Apache 2.0 license. If you would like
44
to contribute something, or simply want to hack on the code this document should help
55
you get started.
66

7-
## Sign the Contributor License Agreement
8-
7+
== Sign the Contributor License Agreement
98
Before we accept a non-trivial patch or pull request we will need you to sign the
10-
[contributor's agreement](https://support.springsource.com/spring_committer_signup).
11-
Signing the contributor's agreement does not grant anyone commit rights to the main repository, but it does mean that we
12-
can accept your contributions, and you will get an author credit if we do. Active contributors might be asked to join
13-
the core team, and given the ability to merge pull requests.
14-
15-
## Code Conventions and Housekeeping
16-
17-
None of these is essential for a pull request, but they will all help. They can also be added after the original pull
18-
request but before a merge.
19-
20-
* Use the Spring Framework code format conventions. Import `eclipse-code-formatter.xml` from the `eclipse` folder of the project
21-
if you are using Eclipse. If using IntelliJ, copy `spring-intellij-code-style.xml` to `~/.IntelliJIdea*/config/codestyles`
22-
and select spring-intellij-code-style from Settings -> Code Styles.
23-
* Make sure all new .java files to have a simple Javadoc class comment with at least an @author tag identifying you, and
24-
preferably at least a paragraph on what the class is for.
25-
* Add the ASF license header comment to all new .java files (copy from existing files in the project)
26-
* Add yourself as an @author to the .java files that you modify substantially (more than cosmetic changes).
9+
https://support.springsource.com/spring_committer_signup[contributor's agreement].
10+
Signing the contributor's agreement does not grant anyone commit rights to the main
11+
repository, but it does mean that we can accept your contributions, and you will get an
12+
author credit if we do. Active contributors might be asked to join the core team, and
13+
given the ability to merge pull requests.
14+
15+
== Code Conventions and Housekeeping
16+
None of these is essential for a pull request, but they will all help. They can also be
17+
added after the original pull request but before a merge.
18+
19+
* Use the Spring Framework code format conventions. Import `eclipse-code-formatter.xml`
20+
from the `eclipse` folder of the project if you are using Eclipse. If using IntelliJ,
21+
copy `spring-intellij-code-style.xml` to `~/.IntelliJIdea*/config/codestyles` and select
22+
spring-intellij-code-style from Settings -> Code Styles.
23+
* Make sure all new `.java` files to have a simple Javadoc class comment with at least an
24+
`@author` tag identifying you, and preferably at least a paragraph on what the class is
25+
for.
26+
* Add the ASF license header comment to all new `.java` files (copy from existing files
27+
in the project)
28+
* Add yourself as an `@author` to the .java files that you modify substantially (more
29+
than cosmetic changes).
2730
* Add some Javadocs and, if you change the namespace, some XSD doc elements.
28-
* A few unit tests would help a lot as well - someone has to do it.
29-
* If no-one else is using your branch, please rebase it against the current master (or other target branch in the main project).
31+
* A few unit tests would help a lot as well -- someone has to do it.
32+
* If no-one else is using your branch, please rebase it against the current master (or
33+
other target branch in the main project).
3034

31-
## Working with the code
35+
== Working with the code
3236
If you don't have an IDE preference we would recommend that you use
33-
[Spring Tools Suite](http://www.springsource.com/developer/sts) or
34-
[Eclipse](http://eclipse.org) when working with the code. We use the
35-
[m2eclipe](http://eclipse.org/m2e/) eclipse plugin for maven support. Other IDEs
36-
and tools should also work without issue.
37+
http://www.springsource.com/developer/sts[Spring Tools Suite] or
38+
http://eclipse.org[Eclipse] when working with the code. We use the
39+
http://eclipse.org/m2e/[m2eclipe] eclipse plugin for maven support. Other IDEs and tools
40+
should also work without issue.
3741

38-
### Building from source
42+
=== Building from source
3943
To build the source you will need to install
40-
[Apache Maven](http://maven.apache.org/run-maven/index.html) v3.0 or above.
44+
http://maven.apache.org/run-maven/index.html[Apache Maven] v3.0 or above.
4145

42-
#### Default build
46+
==== Default build
4347
The project can be built from the root directory using the standard maven command:
4448

49+
[indent=0]
50+
----
4551
$ mvn clean install
52+
----
4653

47-
> **NOTE:** You may need to increase the amount of memory available to Maven by setting
48-
> a `MAVEN_OPTS` environment variable with the value `-Xmx512m -XX:MaxPermSize=128m`
54+
NOTE: You may need to increase the amount of memory available to Maven by setting
55+
a `MAVEN_OPTS` environment variable with the value `-Xmx512m -XX:MaxPermSize=128m`
4956

5057
If you are rebuilding often, you might also want to skip the tests until you are ready
5158
to submit a pull request:
5259

60+
[indent=0]
61+
----
5362
$ mvn clean install -DskipTests
63+
----
5464

55-
#### Full Build
65+
==== Full Build
5666
Multi-module Maven builds cannot directly include maven plugins that are part of the
5767
reactor unless they have previously been built. Unfortunately this restriction causes
5868
some compilations for Spring Boot as we include a maven plugin and use it within the
@@ -71,24 +81,30 @@ can be referenced during the full build. It also generates a `settings.xml` file
7181
enables a `snapshot`, `milestone` or `release` profiles based on the version being
7282
build. To prepare the build, from the root directory use:
7383

84+
[indent=0]
85+
----
7486
$ mvn -P snapshot,prepare install
87+
----
7588

76-
> **NOTE:** You may notice that preparing the build also changes the
77-
> `spring-boot-starter-parent` POM. This is required for our release process to work
78-
> correctly.
89+
NOTE: You may notice that preparing the build also changes the
90+
`spring-boot-starter-parent` POM. This is required for our release process to work
91+
correctly.
7992

8093
2) Run the full build
8194

8295
Once the build has been prepared, you can run a full build using the following commands:
8396

97+
[indent=0]
98+
----
8499
$ cd spring-boot-full-build
85100
$ mvn -s ../settings.xml -P full clean install
101+
----
86102

87103
We generate more artifacts when running the full build (such as Javadoc jars), so you
88104
may find the process a little slower than the standard build.
89105

90-
### Importing into eclipse with m2eclipse
91-
We recommend the [m2eclipe](http://eclipse.org/m2e/) eclipse plugin when working with
106+
=== Importing into eclipse with m2eclipse
107+
We recommend the http://eclipse.org/m2e/[m2eclipe] eclipse plugin when working with
92108
eclipse. If you don't already have m2eclipse installed it is available from the "eclipse
93109
marketplace".
94110

@@ -98,30 +114,33 @@ work with m2eclipse, we provide an additional eclipse plugin that you can instal
98114
* Select `Install new software` from the `help` menu
99115
* Click `Add...` to add a new repository
100116
* Click the `Archive...` button
101-
* Select `org.eclipse.m2e.maveneclipse.site-0.0.1-SNAPSHOT-site.zip`
102-
from the `eclipse` folder in this checkout
117+
* Select `org.eclipse.m2e.maveneclipse.site-0.0.1-SNAPSHOT-site.zip` from the `eclipse`
118+
folder in this checkout
103119
* Install "Maven Integration for the maven-eclipse-plugin"
104120

105-
_NOTE: This plugin is optional. Projects can be imported without the plugin, your code
121+
NOTE: This plugin is optional. Projects can be imported without the plugin, your code
106122
changes just won't be automatically formatted._
107123

108124
With the requisite eclipse plugins installed you can select
109125
`import existing maven projects` from the `file` menu to import the code. You will
110126
need to import the root `spring-boot` pom and the `spring-boot-samples` pom separately.
111127

112-
### Importing into eclipse without m2eclipse
128+
=== Importing into eclipse without m2eclipse
113129
If you prefer not to use m2eclipse you can generate eclipse project meta-data using the
114130
following command:
115131

132+
[indent=0]
133+
----
116134
$ mvn eclipse:eclipse
135+
----
117136

118137
The generated eclipse projects can be imported by selecting `import existing projects`
119138
from the `file` menu.
120139

121-
### Importing into other IDEs
140+
=== Importing into other IDEs
122141
Maven is well supported by most Java IDEs. Refer to you vendor documentation.
123142

124-
### Integration tests
143+
== Integration tests
125144
The sample application are used as integration tests during the build (when you
126145
`mvn install`). Due to the fact that they make use of the `spring-boot-maven-plugin`
127146
they cannot be called directly, and so instead are launched via the

README.adoc

+214
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,214 @@
1+
= Spring Boot image:https://travis-ci.org/spring-projects/spring-boot.png?branch=master["Build Status", link="https://travis-ci.org/spring-projects/spring-boot"]
2+
:docs: http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference
3+
4+
Spring Boot makes it easy to create Spring-powered, production-grade applications and
5+
services with absolute minimum fuss. It takes an opinionated view of the Spring platform
6+
so that new and existing users can quickly get to the bits they need.
7+
8+
You can use Spring Boot to create stand-alone Java applications that can be started using
9+
`java -jar` or more traditional WAR deployments. We also provide a command line tool
10+
that runs spring scripts.
11+
12+
Our primary goals are:
13+
14+
* Provide a radically faster and widely accessible getting started experience for all
15+
Spring development
16+
* Be opinionated out of the box, but get out of the way quickly as requirements start to
17+
diverge from the defaults
18+
* Provide a range of non-functional features that are common to large classes of projects
19+
(e.g. embedded servers, security, metrics, health checks, externalized configuration)
20+
* Absolutely no code generation and no requirement for XML configuration
21+
22+
23+
24+
== Installation and Getting Started
25+
The {docs}/htmlsingle/[reference documentation] includes detailed
26+
{docs}/htmlsingle/#getting-started-installing-spring-boot[installation instructions]
27+
as well as a comprehensive {docs}/htmlsingle/#getting-started-first-application[``getting
28+
started''] guide. Documentation is published in {docs}/htmlsingle/[HTML],
29+
{docs}/pdf/spring-boot-reference.pdf[PDF] and {docs}/epub/spring-boot-reference.epub[EPUB]
30+
formats.
31+
32+
Here is a quick teaser of a Spring Boot application:
33+
34+
[source,java,indent=0]
35+
----
36+
import org.springframework.boot.*;
37+
import org.springframework.boot.autoconfigure.*;
38+
import org.springframework.stereotype.*;
39+
import org.springframework.web.bind.annotation.*;
40+
41+
@Controller
42+
@EnableAutoConfiguration
43+
public class Example {
44+
45+
@RequestMapping("/")
46+
@ResponseBody
47+
String home() {
48+
return "Hello World!";
49+
}
50+
51+
public static void main(String[] args) throws Exception {
52+
SpringApplication.run(Example.class, args);
53+
}
54+
55+
}
56+
----
57+
58+
59+
60+
== Getting help
61+
Having trouble with Spring Boot, We'd like to help!
62+
63+
* Check the {docs}/htmlsingle/[reference documentation], especially the
64+
{docs}/htmlsingle/#howto[How-to's] -- they provide solutions to the most common
65+
questions.
66+
* Learn the Spring basics -- Spring Boot is builds on many other Spring projects, check
67+
the http://spring.io[spring.io] web-site for a wealth of reference documentation. If
68+
you are just starting out with Spring, try one of the http://spring.io/guides[guides].
69+
* Ask a questions - we monitor http://stackoverflow.com[stackoverflow.com] for questions
70+
tagged with http://stackoverflow.com/tags/spring-boot[`spring-boot`].
71+
* Report bugs with Spring Boot at https://github.com/spring-projects/spring-boot/issues.
72+
73+
74+
75+
== Building from Source
76+
You don't need to build from source to use Spring Boot (binaries in
77+
http://repo.spring.io[repo.spring.io], but if you want to try out the latest and greatest,
78+
Spring Boot can be http://maven.apache.org/run-maven/index.html[built with maven]
79+
v3.0.5 or above.
80+
81+
[indent=0]
82+
----
83+
$ mvn clean install
84+
----
85+
86+
NOTE: You may need to increase the amount of memory available to Maven by setting
87+
a `MAVEN_OPTS` environment variable with the value `-Xmx512m -XX:MaxPermSize=128m`
88+
89+
_Also see link:CONTRIBUTING.adoc[CONTRIBUTING.adoc] if you wish to submit pull requests,
90+
and in particular please fill out the
91+
https://support.springsource.com/spring_committer_signup[Contributor's Agreement]
92+
before your first change however trivial. (Or if you filed such an agreement already for
93+
another project just mention that in your pull request.)_
94+
95+
96+
97+
== Modules
98+
There are a number of modules in Spring Boot, here is a quick overview:
99+
100+
101+
102+
=== spring-boot
103+
The main library providing features that support the other parts of Spring Boot,
104+
these include:
105+
106+
* The `SpringApplication` class, providing static convenience methods that make it easy
107+
to write a stand-alone Spring Application. Its sole job is to create and refresh an
108+
appropriate Spring `ApplicationContext`
109+
* Embedded web applications with a choice of container (Tomcat or Jetty for now)
110+
* First class externalized configuration support
111+
* Convenience `ApplicationContext` initializers, including support for sensible logging
112+
defaults
113+
114+
115+
116+
=== spring-boot-autoconfigure
117+
Spring Boot can configure large parts of common applications based on the content
118+
of their classpath. A single `@EnableAutoConfiguration` annotation triggers
119+
auto-configuration of the Spring context.
120+
121+
Auto-configuration attempts to deduce which beans a user might need. For example, If
122+
`HSQLDB` is on the classpath, and the user has not configured any database connections,
123+
then they probably want an in-memory database to be defined. Auto-configuration will
124+
always back away as the user starts to define their own beans.
125+
126+
127+
128+
=== spring-boot-starters
129+
Starters are a set of convenient dependency descriptors that you can include in
130+
your application. You get a one-stop-shop for all the Spring and related technology
131+
that you need without having to hunt through sample code and copy paste loads of
132+
dependency descriptors. For example, if you want to get started using Spring and JPA for
133+
database access just include the `spring-boot-starter-data-jpa` dependency in your
134+
project, and you are good to go.
135+
136+
137+
138+
=== spring-boot-cli
139+
The Spring command line application compiles and runs Groovy source, making it super
140+
easy to write the absolute minimum of code to get an application running. Spring CLI
141+
can also watch files, automatically recompiling and restarting when they change.
142+
143+
144+
145+
=== spring-boot-actuator
146+
Spring Boot Actuator provides additional auto-configuration to decorate your application
147+
with features that make it instantly deployable and supportable in production. For
148+
instance if you are writing a JSON web service then it will provide a server, security,
149+
logging, externalized configuration, management endpoints, an audit abstraction, and
150+
more. If you want to switch off the built in features, or extend or replace them, it
151+
makes that really easy as well.
152+
153+
154+
155+
=== spring-boot-loader
156+
Spring Boot Loader provides the secret sauce that allows you to build a single jar file
157+
that can be launched using `java -jar`. Generally you will not need to use
158+
`spring-boot-loader` directly, but instead work with the
159+
link:spring-boot-tools/spring-boot-gradle-plugin[Gradle] or
160+
link:spring-boot-tools/spring-boot-maven-plugin[Maven] plugin.
161+
162+
163+
164+
== Samples
165+
Groovy samples for use with the command line application are available in
166+
link:spring-boot-cli/samples[spring-boot-cli/samples]. To run the CLI samples type
167+
`spring run <sample>.groovy` from samples directory.
168+
169+
Java samples are available in link:spring-boot-samples[spring-boot-samples] and should
170+
be built with maven and run by invoking `java -jar target/<sample>.jar`. The following
171+
java samples are provided:
172+
173+
* link:spring-boot-samples/spring-boot-sample-simple[spring-boot-sample-simple]
174+
-- A simple command line application
175+
* link:spring-boot-samples/spring-boot-sample-tomcat[spring-boot-sample-tomcat]
176+
-- Embedded Tomcat
177+
* link:spring-boot-samples/spring-boot-sample-jetty[spring-boot-sample-jetty]
178+
-- Embedded Jetty
179+
* link:spring-boot-samples/spring-boot-sample-actuator[spring-boot-sample-actuator]
180+
-- Simple REST service with production features
181+
* link:spring-boot-samples/spring-boot-sample-actuator-ui[spring-boot-sample-actuator-ui]
182+
-- A web UI example with production features
183+
* link:spring-boot-samples/spring-boot-sample-web-ui[spring-boot-sample-web-ui]
184+
-- A thymeleaf web application
185+
* link:spring-boot-samples/spring-boot-sample-web-static[spring-boot-sample-web-static]
186+
-- A web application service static files
187+
* link:spring-boot-samples/spring-boot-sample-batch[spring-boot-sample-batch]
188+
-- Define and run a Batch job in a few lines of code
189+
* link:spring-boot-samples/spring-boot-sample-data-jpa[spring-boot-sample-data-jpa]
190+
-- Spring Data JPA + Hibernate + HSQLDB
191+
* link:spring-boot-samples/spring-boot-sample-integration[spring-boot-sample-integration]
192+
-- A spring integration application
193+
* link:spring-boot-samples/spring-boot-sample-profile[spring-boot-sample-profile]
194+
-- example showing Spring's `@profile` support
195+
* link:spring-boot-samples/spring-boot-sample-traditional[spring-boot-sample-traditional]
196+
-- shows more traditional WAR packaging (but also executable using `java -jar`)
197+
* link:spring-boot-samples/spring-boot-sample-xml[spring-boot-sample-xml]
198+
-- Example show how Spring Boot can be mixed with traditional XML configuration (we
199+
generally recommend using Java `@Configuration` whenever possible)
200+
201+
202+
203+
== Guides
204+
The http://spring.io/[spring.io] site contains several guides that show how to use Spring
205+
Boot step-by-step:
206+
207+
* http://spring.io/guides/gs/spring-boot/[Building an Application with Spring Boot] is a
208+
very basic guide that shows you how to create a simple application, run it and add some
209+
management services.
210+
* http://spring.io/guides/gs/actuator-service/[Building a RESTful Web Service with Spring
211+
Boot Actuator] is a guide to creating a REST web service and also shows how the server
212+
can be configured.
213+
* http://spring.io/guides/gs/convert-jar-to-war/[Converting a Spring Boot JAR Application
214+
to a WAR] shows you how to run applications in a web server as a WAR file.

0 commit comments

Comments
 (0)