Commit Graph

113 Commits

Author SHA1 Message Date
Phillip Webb
85bb347fba Add eclipse specific profile to set execution env
Update the parent POM to include a new profile which is automatically
enabled by eclipse.

The profile duplicates `default` and also set the compiler version to
1.8. This means that M2E sets the execution environment to `JavaSE-1.8`
but the command line build still compiles 1.6 compatible code.

Fixes gh-3618
2015-09-04 22:17:25 -07:00
Stephane Nicoll
19fe86169f Upgrade maven-enforcer-plugin to 1.4
Closes gh-3661
2015-08-27 14:55:04 +02:00
Stephane Nicoll
3298761437 Update maven prerequisite
Closes gh-3614
2015-07-29 09:21:25 +02:00
Huang YunKun
e142c063b5 Remove pre Java8 option 'MaxPermSize'
Closes gh-3487
2015-07-16 10:20:04 +02:00
Andy Wilkinson
4ad23166ea Use a Java 7-compatible version of org.json:json and remove duplicate
Closes gh-3412
2015-07-06 10:00:46 +01:00
Andy Wilkinson
b3b648f050 Upgrade dependency management plugin for compatibility with Gradle 2.5
Closes gh-3334
2015-07-01 13:40:55 +01:00
Dave Syer
d1e6c3b5c0 All JDK 1.8 as a lower limit 2015-06-12 14:42:22 +01:00
Phillip Webb
6b92160295 Enforce Java 8 for compiling 2015-06-11 22:45:56 -07:00
Phillip Webb
b41f852338 Add @UsesUnsafeJava annotation
Add a new annotation to indicate to Animal Sniffer that a method uses
a call to `Unsafe`.

Closes gh-3080
2015-06-01 19:57:04 -07:00
Andy Wilkinson
3c484f8c15 Upgrade to dependency-management-plugin 0.5.1.RELEASE
Closes gh-2935
2015-05-11 16:52:10 +01:00
Andy Wilkinson
51c49b69c5 Support bom-based dependency management in the CLI
Previously, the CLI’s dependency management used proprietary Properties
file-based metadata to configure its dependency management. Since
spring-boot-gradle-plugin’s move to using the separate dependency
management plugin the CLI was the only user of this format.

This commit updates the CLI to use Maven boms to configure its
dependency management. By default it uses the spring-boot-dependencies
bom. This configuration can be augmented and overridden using the new
@DependencyManagementBom annotation which replaces @GrabMetadata.

Closes gh-2688
Closes gh-2439
2015-05-07 14:58:23 +01:00
Andy Wilkinson
73e7f1eec0 Merge branch '1.2.x' 2015-04-21 15:16:26 +01:00
Xiang Li
71ce0f6c95 Remove duplicate json.version property from spring-boot-parent pom.xml
Closes gh-2854
2015-04-21 15:16:09 +01:00
Andy Wilkinson
dcd0eb7895 Update to Dependency Management Plugin 0.5.0.RELEASE
Closes gh-2822
2015-04-14 16:56:12 +01:00
Stephane Nicoll
bbbb34a690 Expose cache statistics as metrics
Add an abstraction that provides a standard manner to retrieve a
statistics snapshot of a cache.

Specific implementations for JSR-107, ehcache, hazelcast, guava and
concurrent map are provided. At the moment the size of the cache and
the hit/miss ratios are recorded. Cache metrics are exposed via the
`cache.` prefix followed by the name of the cache. In case of conflict,
the name of the cache manager is added as a qualifier.

It is possible to easily register a new CacheStatisticsProvider for an
unsupported cache system and the CacheStatistics object itself can be
extended to provide additional metrics.

See gh-2633
Closes gh-2770
2015-04-14 15:43:18 +01:00
Phillip Webb
8143d1f36d Apply animal sniffer to entire build
Move animal sniffer configuration out of spring-boot-dependencies to
spring-boot-parent and apply it to all projects.

See gh-716
2015-04-06 19:47:22 -07:00
Spring Buildmaster
e03c11dda8 Next development version 2015-03-30 22:56:20 -07:00
Stephane Nicoll
80194bd0e3 Upgrade to maven-archiver 2.6
Closes gh-2376
2015-03-27 17:45:59 +01:00
Andy Wilkinson
2c3c62d71c Replace basic Gradle dependency management with use of separate plugin
This commit replaces Spring Boot's basic dependency management support
with separate dependency management plugin. This has a number of
benefits including:

1. A Maven bom can be used rather than a custom properties file
2. Dependency management is applied transitively rather than only to
   direct dependencies
3. Exclusions are applied as they would be in Maven
4. Gradle-generated poms are automatically configured with the
   appropriate dependency management

Closes gh-2133
2015-03-19 13:23:40 +00:00
Phillip Webb
a57a88f5cf Move master to 1.3.0.BUILD-SNAPSHOT 2015-02-26 17:01:02 -08:00
Spring Buildmaster
8f0ad02237 Next development version 2015-02-26 15:26:53 -08:00
Phillip Webb
4b9cb6afee Revert "Disable javadoc linting when building with JDK 8+"
This reverts commit 78432fc745.
2015-02-01 21:38:11 -08:00
Andy Wilkinson
78432fc745 Disable javadoc linting when building with JDK 8+
Java 8 introduced new, aggressive linting of javadoc that’s enabled by
default. The linter isn’t sufficiently configurable to allow us to tune
it to meet the project’s conventions for javadoc so our only realistic
option is to disable linting.

This commit introduces a new profile to disable javadoc linting. To
maintain compatibility with JDK 7, the profile is only active when the
build’s running on JDK 8 or later.

Closes gh-2233
2015-01-19 11:32:03 +00:00
Spring Buildmaster
60725cd8bd Next development version 2015-01-07 23:37:07 -08:00
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
2014-12-16 10:41:07 +01:00
Spring Buildmaster
1a788c1741 Next development version 2014-12-10 16:35:50 -08:00
Phillip Webb
90e9187b80 Polish deployment tests 2014-12-07 12:22:57 -08:00
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
2014-12-05 23:04:22 -08:00
Phillip Webb
4fa8a94dd4 Update to latest Maven plugins
Fixes gh-1899
2014-11-11 12:44:31 -08:00
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
2014-11-02 21:46:28 -08:00
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
2014-11-01 09:05:47 -07:00
Phillip Webb
1a61ffd7d1 Update maven-invoker-plugin to 1.9 2014-08-21 00:43:12 -07:00
Phillip Webb
e6e0cf094b Move more repositories to generated settings.xml 2014-08-20 12:08:30 -07:00
Phillip Webb
a1f1ab7a50 Upgrade maven-plugin-plugin to 3.3 2014-08-20 12:08:30 -07:00
Phillip Webb
80ee963cc5 Merge branch '1.1.x' 2014-08-07 13:04:29 -07:00
Phillip Webb
ccda6f63d9 Attempt to fix failing build 2014-08-07 11:20:56 -07:00
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
2014-08-07 11:02:34 -07:00
Stephane Nicoll
249e09d9bc Switch master to 1.2.0.BUILD-SNAPSHOT 2014-07-11 10:44:05 +02:00
Spring Buildmaster
40327e1ae6 Next development version 2014-07-08 02:33:36 -07:00
Phillip Webb
6fd244c28b Move m2e ignore configuration to parent POM 2014-07-02 14:07:16 -07:00
Spring Buildmaster
981669b7c0 Next development version 2014-06-26 14:09:54 -07:00
Phillip Webb
200cd535c2 Revert "Next development version"
This reverts commit 67189477fe.
2014-06-26 11:03:09 -07:00
Spring Buildmaster
67189477fe Next development version 2014-06-26 10:51:35 -07:00
Spring Buildmaster
542f3cbda8 Next development version 2014-06-24 13:53:56 -07:00
Spring Buildmaster
4ca26a21dc Next development version 2014-06-11 10:46:27 -07:00
Spring Buildmaster
05ed7b3bcd Next development version 2014-06-10 12:40:35 -07:00
Phillip Webb
3007a777d0 Roll back to 1.1.0.BUILD-SNAPSHOT 2014-06-10 09:00:08 -07:00
Spring Buildmaster
c650f2391e Next development version 2014-06-09 21:55:19 -07:00
Phillip Webb
77d5453af2 Add gmavenplus-plugin to parent POM 2014-06-06 22:56:44 -07:00
Phillip Webb
84da33f176 Add more enforcer rules 2014-06-01 14:04:07 +01:00