diff --git a/Jenkinsfile b/Jenkinsfile
index cc9a124da3c..5ee765e236c 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -523,13 +523,13 @@ stage('Non-default environments') {
// so we skip them.
String mavenBuildAdditionalArgs = ''' \
-pl !documentation \
+ -pl !integrationtest/mapper/orm-spring \
-pl !integrationtest/v5migrationhelper/orm \
-pl !integrationtest/java/modules/orm-lucene \
-pl !integrationtest/java/modules/orm-elasticsearch \
-pl !integrationtest/java/modules/orm-outbox-polling-elasticsearch \
-pl !lucene-next/documentation \
-pl !lucene-next/integrationtest/java/modules/orm-lucene \
- -P !springITs \
'''
String mavenDockerArgs = ""
def startedContainers = false
@@ -600,8 +600,7 @@ stage('Non-default environments') {
--fail-fast \
-pl ${[
'org.hibernate.search:hibernate-search-integrationtest-backend-elasticsearch'
- // Add back after Spring Boot 4 update:
- //, 'org.hibernate.search:hibernate-search-integrationtest-showcase-library'
+ , 'org.hibernate.search:hibernate-search-integrationtest-showcase-library'
].join(',')} \
-Dtest.lucene.skip=true \
-Dtest.elasticsearch.distribution=$buildEnv.distribution \
@@ -643,11 +642,9 @@ stage('Non-default environments') {
// Note that because we expect frequent failure and retries,
// we use --fail-fast here, to make sure we don't waste time.
retry(count: 3) {
- // Add back after Spring Boot 4 update:
- // ,org.hibernate.search:hibernate-search-integrationtest-showcase-library
mavenNonDefaultBuild buildEnv, """ \
--fail-fast \
- -pl org.hibernate.search:hibernate-search-integrationtest-backend-elasticsearch \
+ -pl org.hibernate.search:hibernate-search-integrationtest-backend-elasticsearch,org.hibernate.search:hibernate-search-integrationtest-showcase-library \
-Dtest.lucene.skip=true \
-Dtest.elasticsearch.distribution=$buildEnv.distribution \
-Dtest.elasticsearch.version=$buildEnv.version \
diff --git a/build/parents/build/pom.xml b/build/parents/build/pom.xml
index 68af0b60829..1ea42c52ba3 100644
--- a/build/parents/build/pom.xml
+++ b/build/parents/build/pom.xml
@@ -178,11 +178,10 @@
1.1.2.Final
-
-
- 3.5.0
-
- 3.5.0
+
+ 4.0.0-RC2
+
+ 4.0.0.Beta1
1.21.2
2.5
diff --git a/build/reports/pom.xml b/build/reports/pom.xml
index 4452d1e4504..2517ed776a5 100644
--- a/build/reports/pom.xml
+++ b/build/reports/pom.xml
@@ -284,7 +284,7 @@
springITs
- [17,25)
+ [17,)
diff --git a/integrationtest/mapper/orm-spring-uberjar/application/src/main/java/org/hibernate/search/integrationtest/spring/repackaged/application/Application.java b/integrationtest/mapper/orm-spring-uberjar/application/src/main/java/org/hibernate/search/integrationtest/spring/repackaged/application/Application.java
index a81ddc62040..6f205c76222 100644
--- a/integrationtest/mapper/orm-spring-uberjar/application/src/main/java/org/hibernate/search/integrationtest/spring/repackaged/application/Application.java
+++ b/integrationtest/mapper/orm-spring-uberjar/application/src/main/java/org/hibernate/search/integrationtest/spring/repackaged/application/Application.java
@@ -6,8 +6,8 @@
import org.springframework.boot.WebApplicationType;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
import org.springframework.boot.builder.SpringApplicationBuilder;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
import org.springframework.context.ConfigurableApplicationContext;
// CHECKSTYLE:OFF: HideUtilityClassConstructor
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/beanresolution/SpringBeanResolutionIT.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/beanresolution/SpringBeanResolutionIT.java
index b01f6712340..6b1182ae531 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/beanresolution/SpringBeanResolutionIT.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/beanresolution/SpringBeanResolutionIT.java
@@ -37,10 +37,10 @@
import org.springframework.beans.factory.config.ConfigurableBeanFactory;
import org.springframework.boot.WebApplicationType;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
-import org.springframework.boot.autoconfigure.orm.jpa.HibernatePropertiesCustomizer;
import org.springframework.boot.builder.SpringApplicationBuilder;
import org.springframework.boot.context.event.ApplicationReadyEvent;
+import org.springframework.boot.hibernate.autoconfigure.HibernatePropertiesCustomizer;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
import org.springframework.context.ApplicationContext;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.annotation.Bean;
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/jta/JtaAndSpringApplicationConfiguration.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/jta/JtaAndSpringApplicationConfiguration.java
index ec7bcf4bf68..33017b4b0c5 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/jta/JtaAndSpringApplicationConfiguration.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/jta/JtaAndSpringApplicationConfiguration.java
@@ -7,8 +7,8 @@
import org.hibernate.search.integrationtest.spring.testsupport.AbstractSpringITConfig;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
-import org.springframework.boot.autoconfigure.transaction.jta.JtaAutoConfiguration;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
+import org.springframework.boot.transaction.jta.autoconfigure.JtaAutoConfiguration;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.Import;
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/outbox/TransactionOutboxIT.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/outbox/TransactionOutboxIT.java
index 3c075f07996..a6ba555d465 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/outbox/TransactionOutboxIT.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/outbox/TransactionOutboxIT.java
@@ -18,7 +18,7 @@
import org.junit.jupiter.api.extension.RegisterExtension;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Service;
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/sessionproxy/SessionProxyIT.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/sessionproxy/SessionProxyIT.java
index 9c14418e508..1cd32a1f81d 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/sessionproxy/SessionProxyIT.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/sessionproxy/SessionProxyIT.java
@@ -31,7 +31,7 @@
import org.junit.jupiter.api.extension.RegisterExtension;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.stereotype.Service;
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/testsupport/AbstractSpringITConfig.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/testsupport/AbstractSpringITConfig.java
index 4c6c62d4500..cb7aab7d8c9 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/testsupport/AbstractSpringITConfig.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/testsupport/AbstractSpringITConfig.java
@@ -13,9 +13,9 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
-import org.springframework.boot.autoconfigure.orm.jpa.HibernatePropertiesCustomizer;
-import org.springframework.boot.autoconfigure.transaction.jta.JtaAutoConfiguration;
import org.springframework.boot.context.event.ApplicationReadyEvent;
+import org.springframework.boot.hibernate.autoconfigure.HibernatePropertiesCustomizer;
+import org.springframework.boot.transaction.jta.autoconfigure.JtaAutoConfiguration;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.event.EventListener;
diff --git a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/transaction/TransactionIT.java b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/transaction/TransactionIT.java
index 57998ff0dfb..1605bfe2a36 100644
--- a/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/transaction/TransactionIT.java
+++ b/integrationtest/mapper/orm-spring/src/test/java/org/hibernate/search/integrationtest/spring/transaction/TransactionIT.java
@@ -18,7 +18,7 @@
import org.junit.jupiter.api.extension.RegisterExtension;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.boot.autoconfigure.domain.EntityScan;
+import org.springframework.boot.persistence.autoconfigure.EntityScan;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
diff --git a/integrationtest/pom.xml b/integrationtest/pom.xml
index ec0baf17629..cea952211e5 100644
--- a/integrationtest/pom.xml
+++ b/integrationtest/pom.xml
@@ -48,7 +48,7 @@
springITs
- [17,25)
+ [17,)
mapper/orm-spring
diff --git a/integrationtest/showcase/library/src/main/java/org/hibernate/search/integrationtest/showcase/library/repository/indexsearch/IndexSearchLibraryRepositoryImpl.java b/integrationtest/showcase/library/src/main/java/org/hibernate/search/integrationtest/showcase/library/repository/indexsearch/IndexSearchLibraryRepositoryImpl.java
index fc568eb0ca7..12ba136aa39 100644
--- a/integrationtest/showcase/library/src/main/java/org/hibernate/search/integrationtest/showcase/library/repository/indexsearch/IndexSearchLibraryRepositoryImpl.java
+++ b/integrationtest/showcase/library/src/main/java/org/hibernate/search/integrationtest/showcase/library/repository/indexsearch/IndexSearchLibraryRepositoryImpl.java
@@ -58,23 +58,12 @@ public List searchAndProject(String terms, int offset,
@Override
public List searchAndProjectToMethodLocalClass(String terms, int offset, int limit) {
- @ProjectionConstructor
- class LocalClass {
- public final String name;
- public final List services;
-
- public LocalClass(String name, List services) {
- this.name = name;
- this.services = services;
- }
- }
-
if ( terms == null || terms.isEmpty() ) {
return Collections.emptyList();
}
return Search.session( entityManager )
.search( Library.class )
- .select( LocalClass.class )
+ .select( SearchAndProjectToMethodLocalClass.class )
.where( f -> f.match().field( "name" ).matching( terms ) )
.sort( f -> f.field( "collectionSize" ).desc()
.then().field( "name_sort" ) )
@@ -84,6 +73,17 @@ public LocalClass(String name, List services) {
.collect( Collectors.toList() );
}
+ @ProjectionConstructor
+ static class SearchAndProjectToMethodLocalClass {
+ public final String name;
+ public final List services;
+
+ public SearchAndProjectToMethodLocalClass(String name, List services) {
+ this.name = name;
+ this.services = services;
+ }
+ }
+
@Override
public LibraryFacetedSearchResult searchFaceted(String terms, Integer minCollectionSize,
List libraryServices, int offset, int limit) {
diff --git a/lucene-next/integrationtest/pom.xml b/lucene-next/integrationtest/pom.xml
index 3c8723f93dd..433a6696c13 100644
--- a/lucene-next/integrationtest/pom.xml
+++ b/lucene-next/integrationtest/pom.xml
@@ -25,7 +25,7 @@
springITs
- [17,25)
+ [17,)
showcase/library
diff --git a/pom.xml b/pom.xml
index 856c0d3d56d..1afbf31d41d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1348,18 +1348,6 @@
-
- testWithJdk25
-
-
- [25,)
-
-
-
- true
-
-
-
testWithJdk26