Commit Graph

89 Commits (f369a722647f86235f241bb8291eafb8c8e652b6)

Author SHA1 Message Date
Stephane Nicoll 77427f53cc Support of Lombok annotated ConfigurationProperties
Previously, no configuration properties were discovered on a class using
lombok instead of regular getters/setters.

This commit adds a support for some of the lombok annotations,
specifically that is @Data, @Getter and @Setter. Provides the same
semantic as what lombok is generating.

Closes gh-2114
10 years ago
Spring Buildmaster 1a788c1741 Next development version 10 years ago
Phillip Webb 90e9187b80 Polish deployment tests 10 years ago
Phillip Webb 44dde9fc12 Add deployment integration tests
Add deployment tests for Tomcat, TomEE and WildFly to ensure that
a basic Spring Boot application can be deployed to a traditional
Application server.

Since the deployment tests can be quite slow, they currently only
run in the "full" build profile.

Fixes gh-1736
10 years ago
Phillip Webb 4fa8a94dd4 Update to latest Maven plugins
Fixes gh-1899
10 years ago
Stephane Nicoll 884c058e57 Add processor to generate configuration meta-data
Adds an annotation processor to generates a JSON meta-data file at
compile time from @ConfigurationProperties items. Each meta-data file
can include an array or 'properties' and 'groups'.

A 'property' is a single item that may appear in a Spring Boot
'application.properties' file with a given value. For example,
'server.port' and 'server.context-path' are properties. Each property
may optionally include 'type' and 'description' attributes to provide
the data type (e.g. `java.lang.Integer`, `java.lang.String`) and
some short documentation (taken from the field javadoc) about what the
property is for. For consistency, the type of a primitive is translated
to its wrapper counterpart, i.e. `boolean` becomes `java.lang.Boolean`.

A 'group' provides a higher level grouping of properties. For example
the 'server.port' and 'server.context-path' properties are in the
'server' group.

Both 'property' and 'group' items may additional have 'sourceType' and
'sourceMethod' attributes to indicate the source that contributed them.

Users may use `META-INF/additional-spring-configuration-metadata.json`
to manually provide additionally meta-data that is not covered by
@ConfigurationProperties objects. The contents of this file will be
read and merged with harvested items. The complete meta-data file is
finally written to `META-INF/spring-configuration-metadata.json`.

See gh-1001
10 years ago
Phillip Webb 830ce80824 Polish CLI init command
Rename a few classes and methods and extract some logic into helper
classes. Also change 2 char shortcuts to a single char.

Closes gh-1751
10 years ago
Phillip Webb 1a61ffd7d1 Update maven-invoker-plugin to 1.9 10 years ago
Phillip Webb e6e0cf094b Move more repositories to generated settings.xml 10 years ago
Phillip Webb a1f1ab7a50 Upgrade maven-plugin-plugin to 3.3 10 years ago
Phillip Webb 80ee963cc5 Merge branch '1.1.x' 10 years ago
Phillip Webb ccda6f63d9 Attempt to fix failing build 10 years ago
Phillip Webb e237dbeec5 Move repositories out of parent POM
Move repository declarations out of the parent POM and into setting.xml
(except for the default profile). Also added jboss repository in an
attempt to fix the failing CI release.

Fixed gh-1349
10 years ago
Stephane Nicoll 249e09d9bc Switch master to 1.2.0.BUILD-SNAPSHOT 11 years ago
Spring Buildmaster 40327e1ae6 Next development version 11 years ago
Phillip Webb 6fd244c28b Move m2e ignore configuration to parent POM 11 years ago
Spring Buildmaster 981669b7c0 Next development version 11 years ago
Phillip Webb 200cd535c2 Revert "Next development version"
This reverts commit 67189477fe.
11 years ago
Spring Buildmaster 67189477fe Next development version 11 years ago
Spring Buildmaster 542f3cbda8 Next development version 11 years ago
Spring Buildmaster 4ca26a21dc Next development version 11 years ago
Spring Buildmaster 05ed7b3bcd Next development version 11 years ago
Phillip Webb 3007a777d0 Roll back to 1.1.0.BUILD-SNAPSHOT 11 years ago
Spring Buildmaster c650f2391e Next development version 11 years ago
Phillip Webb 77d5453af2 Add gmavenplus-plugin to parent POM 11 years ago
Phillip Webb 84da33f176 Add more enforcer rules 11 years ago
Phillip Webb bdcb9407eb Restore commons-logging dependency for spring-boot
Restore the dependency on commons-logging (transitively via spring-core)
for spring-boot. This means that we are not tied directly to SLF4J, but
it is still an option that can be used via `jcl-over-slf4j`.

The `spring-boot-starter-parent` continues to replace `commons-logging`
with `jcl-over-slf4j`.

Fixes gh-981
11 years ago
Andy Wilkinson 7a8be3d600 Use Spring Framework bom and fully exclude commons-logging
Closes #955
Closes #978
11 years ago
Andy Wilkinson 209acd9226 Merge branch '1.0.x' 11 years ago
Andy Wilkinson 7d6438ad9b Upgrade to Aether 0.9.1 11 years ago
Dave Syer 344fb4616d Add sources jar to default built 11 years ago
Phillip Webb 1c5ebc72c5 Revert "Fix dependency management failure"
This reverts commit 1ef3d3bda9.
11 years ago
Stephane Nicoll 1ef3d3bda9 Fix dependency management failure
All dependencies have recently moved to the spring-boot-dependencies
POM but that POM does not contain the repositories that are required to
download milestone artifacts.

This commit moves the default profile that is active by default at the
right place in the hierarchy so that it is applied there as well.
11 years ago
Stephane Nicoll 15501eaafb Exclude support in the maven plugin
This commit provides several options to exclude one or more
dependencies:

* excludes allows to specify an arbitrary number of exclude sub
  element defining the groupId and artifactId of the dependency
  to exclude
* excludedGroupIds defines the comma separated list of groupIds
  to exclude
* excludeArtifactIds defines the comma separated list of artifactIds
  to exclude

While any artifact can be excluded, this is designed to exclude
provided-scoped dependencies that should not be bundled in the
executable jar/war.

The outcome of java -jar myapp.jar should be consistent with the run
goal: these exclusions are therefore applied to the classpath that
the run goal computes to launch the application.

This commit also adds some integration tests and updates the
plugin's documentation

Fixes gh-649, gh-650 and gh-674
11 years ago
Phillip Webb 34b7bb20fd Add maven implicit plugin group ID
Add previously implicit <groupId>org.apache.maven.plugins</groupId>
to plugin declarations.
11 years ago
Stephane Nicoll 888703cf26 Add maven plugin documentation
This commit adds the generated site for the maven plugin alongside
the developer guide and javadoc. The maven plugin is available in
the "/maven-plugin" context.

The advanced information described in the developer guide have
been migrated to the plugin site as most the information is taken
from the code itself, which avoids duplication.

Fixes #749
11 years ago
John Blum 34cbe1e60b Created a Spring Data GemFire Starter POM
... as well as a Spring Boot Sample Application with associated tests
for demonstrating how to get started using both Spring Data GemFire
and GemFire.
11 years ago
Phillip Webb 64a835e91a Move master to 1.1.0.BUILD-SNAPSHOT 11 years ago
Spring Buildmaster d3954a1703 Next development version 11 years ago
Phillip Webb fca7a8dc96 Enforce Java 1.7 during the release
Add enforcer rules to ensure that only Java 1.7 is used during the
release.

Fixes gh-712
11 years ago
Mattias Severson 506e57663a Relaxed <requireJavaVersion> configuration of the maven-enforcer-plugin
This commit resolves #695 by changing the configuration so that all Java versions from 1.7 and above are allowed.
11 years ago
Spring Buildmaster a5864ebcd0 Next development version 11 years ago
Spring Buildmaster 15e9dbe98b Next development version 11 years ago
Phillip Webb 0af7f7e347 Add missing POM info 11 years ago
Phillip Webb 488b03387f Polish POM formatting 11 years ago
Phillip Webb 6f9bb233ad Revert "Next development version"
This reverts commit b67bb70ee3.
11 years ago
Spring Buildmaster b67bb70ee3 Next development version 11 years ago
Phillip Webb ac4cdd33c3 Revert "Next development version"
This reverts commit 1d0eea12eb.
Returning to 1.0.0.BUILD-SNAPSHOT for an updated release.
11 years ago
Spring Buildmaster 1d0eea12eb Next development version 11 years ago
Andy Wilkinson b8858bdb8f Enable support for use of encryption in Maven's settings.xml
This commit updates the CLI so that it will decrypt any encrypted
passwords in a user's Maven settings.xml file.

The code that performs the decrytion has a transitive dependency on
three types in Plexus' logging API. There are tens of different
artifacts containing this API available in Maven Central. Rather than
bloating the API with a dependency on a complete Plexus container,
which could perhaps be considered the primary source, a dependency on
a considerably smaller artifact has been introduced.

Closes #574
11 years ago