diff --git a/src/main/java/org/springframework/data/release/build/BuildOperations.java b/src/main/java/org/springframework/data/release/build/BuildOperations.java index 44a699c..ca8ed49 100644 --- a/src/main/java/org/springframework/data/release/build/BuildOperations.java +++ b/src/main/java/org/springframework/data/release/build/BuildOperations.java @@ -170,7 +170,7 @@ public class BuildOperations { */ public StagingRepository openStagingRepository(TrainIteration iteration) { - BuildSystem orchestrator = buildSystems.getRequiredPluginFor(iteration.getSupportedProject(Projects.BUILD)); + BuildSystem orchestrator = getRepositoryOrchestrator(iteration.getTrain()); return iteration.isPublic() ? orchestrator.open(iteration.getTrain()) : StagingRepository.EMPTY; } @@ -183,13 +183,21 @@ public class BuildOperations { */ public void closeStagingRepository(Train train, StagingRepository stagingRepository) { - BuildSystem orchestrator = buildSystems.getRequiredPluginFor(train.getSupportedProject(Projects.BUILD)); + BuildSystem orchestrator = getRepositoryOrchestrator(train); if (stagingRepository.isPresent()) { orchestrator.close(train, stagingRepository); } } + private BuildSystem getRepositoryOrchestrator(Train train) { + + SupportedProject project = train.getSupportedProject(BUILD); + BuildSystem orchestrator = buildSystems.getRequiredPluginFor(project); + + return orchestrator.withJavaVersion(executor.detectJavaVersion(project)); + } + /** * Promote the staging repository. * @@ -199,7 +207,7 @@ public class BuildOperations { */ public void releaseStagingRepository(Train train, StagingRepository stagingRepository) { - BuildSystem orchestrator = buildSystems.getRequiredPluginFor(train.getSupportedProject(Projects.BUILD)); + BuildSystem orchestrator = getRepositoryOrchestrator(train); if (stagingRepository.isPresent()) { orchestrator.release(train, stagingRepository);