Skip to content
Open
Show file tree
Hide file tree
Changes from 20 commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
f1a881e
Quick Updates for Spring Boot 4
jamesfredley Jan 19, 2026
fb217b9
Merge remote-tracking branch 'origin/8.0.x' into spring-boot-4
jamesfredley Mar 20, 2026
530013a
fix: resolve Spring Boot 4 incompatibilities reintroduced by 8.0.x merge
jamesfredley Mar 20, 2026
5aad61d
Merge branch '8.0.x' into spring-boot-4
jamesfredley Mar 21, 2026
6e2d905
Merge branch '8.0.x' into spring-boot-4
jamesfredley Mar 21, 2026
fb98bbe
fix: Remove ThemeSource usage removed in Spring Framework 7.0
jamesfredley Mar 21, 2026
62f8864
fix: correct import ordering in ControllersAutoConfiguration
jamesfredley Mar 21, 2026
f703763
fix: Resolve compilation and test failures for Spring Boot 4 upgrade
jamesfredley Mar 21, 2026
29ce89a
fix: Replace wildcard import with explicit imports in LoggingTransformer
jamesfredley Mar 21, 2026
5c4bb1a
Merge branch '8.0.x' into spring-boot-4
jamesfredley Mar 21, 2026
8e2878a
fix: Resolve CI failures for Spring Boot 4 upgrade
jamesfredley Mar 21, 2026
042ef95
fix: restore reset() behavior in AbstractGrailsMockHttpServletResponse
matrei Mar 26, 2026
577bb41
test: Update assertions in RenderMethodTests
matrei Mar 26, 2026
0717300
test(cleanup): Cleanup RenderMethodTests
matrei Mar 26, 2026
919590f
fix(deps): update to spring-boot 4.0.5 and groovy 4.0.31
matrei Mar 30, 2026
710b3eb
build: minor cleanup
matrei Mar 30, 2026
bcc0972
fix: minor cleanup and removing of `@CompileDynamic`
matrei Mar 30, 2026
eff26da
Merge remote-tracking branch 'origin/8.0.x' into spring-boot-4
jamesfredley Mar 30, 2026
ad9a860
fix: update Spring Boot 4.0 bootstrap API imports to new package
jamesfredley Mar 30, 2026
b0903f7
fix: update autoconfigure exclusion paths for Spring Boot 4 package r…
jamesfredley Mar 30, 2026
6d96a7a
Merge branch '8.0.x' into spring-boot-4
jamesfredley Mar 31, 2026
0fd14cd
fix: address Copilot review feedback on Spring Boot 4 upgrade
jamesfredley Mar 31, 2026
f026c56
fix: address review feedback and architectural improvements for Sprin…
jamesfredley Apr 2, 2026
1314a2e
Fix servlet embedded tests & include the same dependencies as include…
jdaugherty Apr 4, 2026
307c57d
Merge pull request #15554 from apache/spring-boot-4-servletfixes
jamesfredley Apr 6, 2026
6991536
Merge remote-tracking branch 'origin/8.0.x' into spring-boot-4
jamesfredley Apr 7, 2026
d881a3c
Spring Boot 4 embedded server follow-ups: Tomcat, Undertow, JSP test
jamesfredley Apr 7, 2026
ee720c2
revert UrlMappingsAutoConfiguration changes
jdaugherty Apr 7, 2026
95f902f
Remove jackson.version override from BOM, let Spring Boot manage Jackson
jamesfredley Apr 7, 2026
8d23e8a
Fix Spring Boot 4 class relocations in tests, docs, and config
jamesfredley Apr 7, 2026
6a09010
Add NOTICE file to vendored spring-orm subproject
jamesfredley Apr 7, 2026
588d935
Add comprehensive Grails 8 upgrade guide for Spring Boot 4
jamesfredley Apr 7, 2026
ca0ac32
Fix JSP view rendering through Grails layout pipeline on Tomcat 11
jamesfredley Apr 7, 2026
8be9fb3
Update grails-micronaut to micronaut-platform 5.0.0-M1 with JDK 21 to…
jamesfredley Apr 7, 2026
6cba542
Fix Micronaut 5 JDK 21 build issues: groovydoc, SBOM, asset-pipeline
jamesfredley Apr 7, 2026
046b1a3
Fix table template rendering and update forge Undertow test for Sprin…
jamesfredley Apr 7, 2026
0832a3c
Fix javadoc & code style to match Grails
jdaugherty Apr 8, 2026
c51583f
Remove sitemesh3 since it does not support spring boot 4
jdaugherty Apr 8, 2026
4da5513
Remove grails-gsp-spring-boot from project until sitemesh3 is supported
jdaugherty Apr 8, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .agents/skills/grails-developer/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ Activate this skill when developing with Grails 7, including:
## Technology Stack

Grails 7 is built on:
- **Spring Boot**: 3.5.x
- **Spring Framework**: 6.2.x
- **Spring Boot**: 4.0.x
- **Spring Framework**: 7.0.x
- **Groovy**: 4.0.x
- **Gradle**: 8.14.x
- **Spock**: 2.3-groovy-4.0
Expand Down
4 changes: 2 additions & 2 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@ export GRADLE_OPTS="-Xms2G -Xmx5G"
|-----------|---------|
| JDK | 17+ (baseline 17) |
| Groovy | 4.0.x |
| Spring Boot | 3.5.x |
| Spring Framework | 6.2.x |
| Spring Boot | 4.0.x |
| Spring Framework | 7.0.x |
| Spock | 2.3-groovy-4.0 |
| Gradle | 8.14.x |
| Jakarta EE | 10 |
Expand Down
2 changes: 1 addition & 1 deletion build-logic/docs-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ dependencies {

testImplementation "org.codehaus.groovy:groovy-test-junit5:${GroovySystem.version}"
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.12.2'
testImplementation 'org.junit.platform:junit-platform-runner:1.12.2'
testImplementation 'org.junit.platform:junit-platform-suite:1.12.2'
testRuntimeOnly 'org.junit.platform:junit-platform-launcher:1.12.2'
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.12.2'
}
Expand Down
8 changes: 8 additions & 0 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,14 @@ subprojects {
def cacheHours = isCiBuild || isReproducibleBuild ? 0 : 24
cacheDynamicVersionsFor(cacheHours, 'hours')
cacheChangingModulesFor(cacheHours, 'hours')

// Force Groovy 4.0.31 to override Spring Boot 4.0.5's default of Groovy 5.0.4
// This ensures all grails-core modules are compiled with the correct Groovy version
force 'org.apache.groovy:groovy:4.0.31'
force 'org.apache.groovy:groovy-templates:4.0.31'
force 'org.apache.groovy:groovy-xml:4.0.31'
force 'org.apache.groovy:groovy-json:4.0.31'
force 'org.apache.groovy:groovy-sql:4.0.31'
}
}
}
Expand Down
37 changes: 19 additions & 18 deletions dependencies.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,7 @@ ext {
'jna.version' : '5.17.0',
'jquery.version' : '3.7.1',
'objenesis.version' : '3.4',
'spring-boot.version' : '3.5.11',
'spring-boot.version' : '4.0.5',
]

// Note: the name of the dependency must be the prefix of the property name so properties in the pom are resolved correctly
Expand All @@ -48,22 +48,23 @@ ext {

// Note: the name of the dependency must be the prefix of the property name so properties in the pom are resolved correctly
gradleBomDependencies = [
'ant' : "org.apache.ant:ant:${gradleBomDependencyVersions['ant.version']}",
'ant-junit' : "org.apache.ant:ant-junit:${gradleBomDependencyVersions['ant.version']}",
'asciidoctor-gradle-jvm': "org.asciidoctor:asciidoctor-gradle-jvm:${gradleBomDependencyVersions['asciidoctor-gradle-jvm.version']}",
'asciidoctorj' : "org.asciidoctor:asciidoctorj:${gradleBomDependencyVersions['asciidoctorj.version']}",
'asset-pipeline-gradle' : "cloud.wondrify:asset-pipeline-gradle:${gradleBomDependencyVersions['asset-pipeline-gradle.version']}",
'byte-buddy' : "net.bytebuddy:byte-buddy:${gradleBomDependencyVersions['byte-buddy.version']}",
'commons-text' : "org.apache.commons:commons-text:${gradleBomDependencyVersions['commons-text.version']}",
'directory-watcher' : "io.methvin:directory-watcher:${gradleBomDependencyVersions['directory-watcher.version']}",
'grails-publish-plugin' : "org.apache.grails.gradle:grails-publish:${gradleBomDependencyVersions['grails-publish-plugin.version']}",
'jansi' : "org.fusesource.jansi:jansi:${gradleBomDependencyVersions['jansi.version']}",
'javaparser-core' : "com.github.javaparser:javaparser-core:${gradleBomDependencyVersions['javaparser-core.version']}",
'jline' : "jline:jline:${gradleBomDependencyVersions['jline.version']}",
'jna' : "net.java.dev.jna:jna:${gradleBomDependencyVersions['jna.version']}",
'objenesis' : "org.objenesis:objenesis:${gradleBomDependencyVersions['objenesis.version']}",
'spring-boot-cli' : "org.springframework.boot:spring-boot-cli:${gradleBomDependencyVersions['spring-boot.version']}",
'spring-boot-gradle' : "org.springframework.boot:spring-boot-gradle-plugin:${gradleBomDependencyVersions['spring-boot.version']}",
'ant' : "org.apache.ant:ant:${gradleBomDependencyVersions['ant.version']}",
'ant-junit' : "org.apache.ant:ant-junit:${gradleBomDependencyVersions['ant.version']}",
'asciidoctorj-gradle-jvm': "org.asciidoctor:asciidoctor-gradle-jvm:${gradleBomDependencyVersions['asciidoctor-gradle-jvm.version']}",
'asciidoctorj' : "org.asciidoctor:asciidoctorj:${gradleBomDependencyVersions['asciidoctorj.version']}",
'asset-pipeline-gradle' : "cloud.wondrify:asset-pipeline-gradle:${gradleBomDependencyVersions['asset-pipeline-gradle.version']}",
'byte-buddy' : "net.bytebuddy:byte-buddy:${gradleBomDependencyVersions['byte-buddy.version']}",
'commons-text' : "org.apache.commons:commons-text:${gradleBomDependencyVersions['commons-text.version']}",
'directory-watcher' : "io.methvin:directory-watcher:${gradleBomDependencyVersions['directory-watcher.version']}",
'grails-publish-plugin' : "org.apache.grails.gradle:grails-publish:${gradleBomDependencyVersions['grails-publish-plugin.version']}",
'jansi' : "org.fusesource.jansi:jansi:${gradleBomDependencyVersions['jansi.version']}",
'javaparser-core' : "com.github.javaparser:javaparser-core:${gradleBomDependencyVersions['javaparser-core.version']}",
'jline' : "jline:jline:${gradleBomDependencyVersions['jline.version']}",
'jna' : "net.java.dev.jna:jna:${gradleBomDependencyVersions['jna.version']}",
'objenesis' : "org.objenesis:objenesis:${gradleBomDependencyVersions['objenesis.version']}",
'spring-boot-cli' : "org.springframework.boot:spring-boot-cli:${gradleBomDependencyVersions['spring-boot.version']}",
'spring-boot-gradle' : "org.springframework.boot:spring-boot-gradle-plugin:${gradleBomDependencyVersions['spring-boot.version']}",
'spring-boot-loader-tools': "org.springframework.boot:spring-boot-loader-tools:${gradleBomDependencyVersions['spring-boot.version']}",
]

bomDependencyVersions = [
Expand All @@ -73,7 +74,7 @@ ext {
'commons-codec.version' : '1.18.0',
'commons-lang3.version' : '3.20.0',
'geb-spock.version' : '8.0.1',
'groovy.version' : '4.0.30',
'groovy.version' : '4.0.31',
'jackson.version' : '2.19.1',
'jquery.version' : '3.7.1',
'liquibase-hibernate5.version': '4.27.0',
Expand Down
9 changes: 9 additions & 0 deletions grails-bom/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -224,6 +224,15 @@ ext {
for (Map.Entry<String, String> property : pomProperties.entrySet()) {
propertiesNode.appendNode(property.key, property.value)
}

// Override Spring Boot's groovy.version property with Grails' version
// Spring Boot 4.0.5 defaults to Groovy 5.0.4, but Grails 8.0.x uses Groovy 4.0.31
def groovyVersionNode = propertiesNode.'groovy.version'
if (groovyVersionNode) {
groovyVersionNode[0].value = bomDependencyVersions['groovy.version']
} else {
propertiesNode.appendNode('groovy.version', bomDependencyVersions['groovy.version'])
}
}
}
}
2 changes: 1 addition & 1 deletion grails-bootstrap/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
2 changes: 1 addition & 1 deletion grails-codecs-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
2 changes: 1 addition & 1 deletion grails-codecs/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
2 changes: 1 addition & 1 deletion grails-common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'
testImplementation 'org.slf4j:slf4j-simple'
testImplementation 'org.spockframework:spock-core', {
transitive = false
Expand Down
2 changes: 1 addition & 1 deletion grails-console/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
4 changes: 3 additions & 1 deletion grails-controllers/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,8 @@ dependencies {

api 'org.apache.groovy:groovy'
api 'org.springframework.boot:spring-boot-autoconfigure'
api 'org.springframework.boot:spring-boot-webmvc'
api 'org.springframework.boot:spring-boot-servlet'
compileOnlyApi 'jakarta.servlet:jakarta.servlet-api'

runtimeOnly project(':grails-i18n')
Expand All @@ -60,7 +62,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,11 @@
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
import org.springframework.boot.autoconfigure.web.servlet.DispatcherServletRegistrationBean;
import org.springframework.boot.autoconfigure.web.servlet.HttpEncodingAutoConfiguration;
import org.springframework.boot.autoconfigure.web.servlet.WebMvcAutoConfiguration;
import org.springframework.boot.servlet.autoconfigure.HttpEncodingAutoConfiguration;
import org.springframework.boot.servlet.filter.OrderedCharacterEncodingFilter;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.filter.OrderedCharacterEncodingFilter;
import org.springframework.boot.webmvc.autoconfigure.DispatcherServletRegistrationBean;
import org.springframework.boot.webmvc.autoconfigure.WebMvcAutoConfiguration;
import org.springframework.context.ApplicationContext;
import org.springframework.context.annotation.Bean;
import org.springframework.util.ClassUtils;
Expand Down
2 changes: 1 addition & 1 deletion grails-converters/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
6 changes: 5 additions & 1 deletion grails-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,10 @@ dependencies {
api 'org.springframework:spring-context'
api 'org.springframework.boot:spring-boot-autoconfigure'

implementation 'org.springframework.boot:spring-boot-web-server', {
// impl: WebServerApplicationContext
}

compileOnly 'org.springframework:spring-test'
compileOnly 'org.apache.groovy:groovy-templates'

Expand All @@ -68,7 +72,7 @@ dependencies {

testImplementation 'org.apache.groovy:groovy-test-junit5'
testImplementation 'org.junit.jupiter:junit-jupiter-api'
testImplementation 'org.junit.platform:junit-platform-runner'
testImplementation 'org.junit.platform:junit-platform-suite'

testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'

Expand Down
2 changes: 1 addition & 1 deletion grails-core/src/main/groovy/grails/boot/GrailsApp.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import org.codehaus.groovy.control.CompilationUnit
import org.codehaus.groovy.control.CompilerConfiguration

import org.springframework.boot.SpringApplication
import org.springframework.boot.web.context.WebServerApplicationContext
import org.springframework.boot.web.server.context.WebServerApplicationContext
import org.springframework.context.ConfigurableApplicationContext
import org.springframework.core.env.ConfigurableEnvironment
import org.springframework.core.io.ResourceLoader
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,8 +26,8 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import org.springframework.boot.ConfigurableBootstrapContext;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.bootstrap.ConfigurableBootstrapContext;
import org.springframework.boot.env.EnvironmentPostProcessor;
import org.springframework.core.Ordered;
import org.springframework.core.env.ConfigurableEnvironment;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ import java.nio.file.Path
import groovy.transform.CompileStatic
import groovy.util.logging.Slf4j

import org.springframework.boot.ConfigurableBootstrapContext
import org.springframework.boot.bootstrap.ConfigurableBootstrapContext
import org.springframework.boot.SpringApplication
import org.springframework.boot.SpringApplicationRunListener
import org.springframework.boot.env.PropertiesPropertySourceLoader
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,8 @@
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import org.springframework.boot.BootstrapRegistry;
import org.springframework.boot.BootstrapRegistryInitializer;
import org.springframework.boot.bootstrap.BootstrapRegistry;
import org.springframework.boot.bootstrap.BootstrapRegistryInitializer;

import org.apache.grails.core.plugins.DefaultPluginDiscovery;
import org.apache.grails.core.plugins.PluginDiscovery;
Expand All @@ -37,7 +37,7 @@
* access the same discovered, filtered, and sorted set of plugins.</p>
*
* <p>This class is registered via {@code META-INF/spring.factories} under the
* {@code org.springframework.boot.BootstrapRegistryInitializer} key.</p>
* {@code org.springframework.boot.bootstrap.BootstrapRegistryInitializer} key.</p>
*
* @since 7.1
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -62,9 +62,9 @@ class ApplicationClassInjector implements GrailsArtefactClassInjector {

public static final String EXCLUDE_MEMBER = 'exclude'
public static final List<String> EXCLUDED_AUTO_CONFIGURE_CLASSES = [
'org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration',
'org.springframework.boot.autoconfigure.reactor.ReactorAutoConfiguration',
'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration'
'org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration',
'org.springframework.boot.reactor.autoconfigure.ReactorAutoConfiguration',
'org.springframework.boot.hibernate.autoconfigure.HibernateJpaAutoConfiguration'
]

/**
Expand Down
2 changes: 1 addition & 1 deletion grails-core/src/main/resources/META-INF/spring.factories
Original file line number Diff line number Diff line change
Expand Up @@ -22,4 +22,4 @@ org.springframework.boot.env.PropertySourceLoader=\
org.grails.config.yaml.YamlPropertySourceLoader
org.springframework.boot.env.EnvironmentPostProcessor=grails.boot.config.GrailsEnvironmentPostProcessor
org.springframework.boot.SpringApplicationRunListener=grails.config.external.ExternalConfigRunListener
org.springframework.boot.BootstrapRegistryInitializer=org.apache.grails.core.GrailsBootstrapRegistryInitializer
org.springframework.boot.bootstrap.BootstrapRegistryInitializer=org.apache.grails.core.GrailsBootstrapRegistryInitializer
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ import org.apache.grails.core.plugins.PluginDescriptor
import org.apache.grails.core.plugins.PluginDiscovery
import org.apache.grails.core.plugins.PluginInfo
import org.apache.grails.core.plugins.PluginMetadata
import org.springframework.boot.ConfigurableBootstrapContext
import org.springframework.boot.bootstrap.ConfigurableBootstrapContext
import org.springframework.boot.SpringApplication
import org.springframework.core.env.StandardEnvironment
import org.springframework.core.io.Resource
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,9 @@ class ApplicationClassInjectorSpec extends Specification {

where:
className << [
'org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration',
'org.springframework.boot.autoconfigure.reactor.ReactorAutoConfiguration',
'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration'
'org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration',
'org.springframework.boot.reactor.autoconfigure.ReactorAutoConfiguration',
'org.springframework.boot.hibernate.autoconfigure.HibernateJpaAutoConfiguration'
]
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import org.springframework.beans.factory.annotation.Autowired
import org.springframework.boot.SpringApplication
import org.springframework.boot.autoconfigure.EnableAutoConfiguration
import org.springframework.boot.autoconfigure.SpringBootApplication
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
import org.springframework.boot.hibernate.autoconfigure.HibernateJpaAutoConfiguration
import org.springframework.context.annotation.Bean
import org.springframework.context.annotation.ComponentScan

Expand Down
11 changes: 8 additions & 3 deletions grails-data-hibernate5/boot-plugin/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -40,17 +40,22 @@ dependencies {
// TODO: Clarify and clean up dependencies
implementation platform(project(':grails-bom'))

api project(":grails-data-hibernate5-core")
api "org.apache.groovy:groovy"
api "org.springframework.boot:spring-boot-autoconfigure"

compileOnly project(':grails-shell-cli'), {
exclude group:'org.apache.groovy', module:'groovy'
}
api "org.apache.groovy:groovy"
api "org.springframework.boot:spring-boot-autoconfigure"
api project(":grails-data-hibernate5-core")
compileOnly "org.springframework.boot:spring-boot-jdbc"
compileOnly "org.springframework.boot:spring-boot-hibernate"

testImplementation project(':grails-shell-cli'), {
exclude group:'org.apache.groovy', module:'groovy'
}
testImplementation "org.spockframework:spock-core"
testImplementation "org.springframework.boot:spring-boot-jdbc"
testImplementation "org.springframework.boot:spring-boot-hibernate"

testRuntimeOnly "org.apache.tomcat:tomcat-jdbc"
testRuntimeOnly "com.h2database:h2"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,8 @@ import org.springframework.boot.autoconfigure.AutoConfigureBefore
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean
import org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
import org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
import org.springframework.boot.hibernate.autoconfigure.HibernateJpaAutoConfiguration
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration
import org.springframework.context.ApplicationContext
import org.springframework.context.ApplicationContextAware
import org.springframework.context.ConfigurableApplicationContext
Expand Down
Loading
Loading