Skip to content

Commit 260f84f

Browse files
committed
Order BatchAutoConfiguration after DataSourceAutoConfiguration
Prior to the restructuring, this ordering was in place, but not directly. BatchAutoConfiguration was ordered after HibernateJpaAutoConfiguration which, in turn, was ordered after DataSourceAutoConfiguration. This works as all of the auto-configuration was in the same module. Following the restructuring, HibernateJpaAutoConfiguration may not be on the classpath. When it's absent, it's ordering is also lost which means that BatchAutoConfiguration won't be ordered after DataSourceAutoConfiguation with spring-boot-hibernate isn't present. This commit adds explicit after ordering to BatchAutoConfiguration. This ensures consistent ordering, with or without the JPA auto-config.
1 parent 64d45cc commit 260f84f

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

spring-boot-project/spring-boot-batch/src/main/java/org/springframework/boot/batch/autoconfigure/BatchAutoConfiguration.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@
3636
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
3737
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
3838
import org.springframework.boot.context.properties.EnableConfigurationProperties;
39+
import org.springframework.boot.jdbc.autoconfigure.DataSourceAutoConfiguration;
3940
import org.springframework.boot.sql.autoconfigure.init.OnDatabaseInitializationCondition;
4041
import org.springframework.boot.sql.init.dependency.DatabaseInitializationDependencyConfigurer;
4142
import org.springframework.boot.transaction.autoconfigure.TransactionAutoConfiguration;
@@ -69,7 +70,7 @@
6970
* @author Yanming Zhou
7071
* @since 4.0.0
7172
*/
72-
@AutoConfiguration(after = TransactionAutoConfiguration.class,
73+
@AutoConfiguration(after = { DataSourceAutoConfiguration.class, TransactionAutoConfiguration.class },
7374
afterName = "org.springframework.boot.hibernate.autoconfigure.HibernateJpaAutoConfiguration")
7475
@ConditionalOnClass({ JobLauncher.class, DataSource.class, DatabasePopulator.class })
7576
@ConditionalOnBean({ DataSource.class, PlatformTransactionManager.class })

0 commit comments

Comments
 (0)