Skip to content

Commit a236aab

Browse files
committed
Set RepositorySystemSession.systemProperties/configProperties
Closes gh-65
1 parent 7e700c4 commit a236aab

File tree

2 files changed

+25
-0
lines changed

2 files changed

+25
-0
lines changed

spring-boot-testjars-maven/src/main/java/org/springframework/experimental/boot/server/exec/MavenClasspathEntry.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,10 @@
1919
import java.io.File;
2020
import java.util.ArrayList;
2121
import java.util.Collections;
22+
import java.util.HashMap;
2223
import java.util.List;
24+
import java.util.Map;
25+
import java.util.Properties;
2326

2427
import org.apache.commons.logging.Log;
2528
import org.apache.commons.logging.LogFactory;
@@ -173,6 +176,7 @@ public void serviceCreationFailed(Class<?> type, Class<?> impl, Throwable except
173176
private static DefaultRepositorySystemSession newRepositorySystemSession(RepositorySystem system) {
174177
DefaultRepositorySystemSession session = MavenRepositorySystemUtils.newSession();
175178

179+
HashMap<Object, Object> sysProps = new HashMap<>(System.getProperties());
176180
String homeDirectory = System.getProperty("user.home");
177181
File mavenLocal = new File(homeDirectory, ".m2/repository");
178182

@@ -181,6 +185,9 @@ private static DefaultRepositorySystemSession newRepositorySystemSession(Reposit
181185

182186
session.setTransferListener(new LoggingMavenTransferListener());
183187
session.setRepositoryListener(new LoggingMavenRepositoryListener());
188+
session.setSystemProperties(sysProps);
189+
session.setConfigProperties(sysProps);
190+
184191

185192
// uncomment to generate dirty trees
186193
// session.setDependencyGraphTransformer( null );

spring-boot-testjars-maven/src/test/java/org/springframework/experimental/boot/server/exec/MavenClasspathEntryTests.java

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,24 @@ void runtimeDependencyResolved() {
5757
assertThat(entries).anyMatch(entry -> entry.contains(runtimeDependency));
5858
}
5959

60+
@Test
61+
void jdk() {
62+
String cloudVersion = "4.2.0";
63+
MavenClasspathEntry classpath = new MavenClasspathEntry(
64+
"org.springframework.cloud:spring-cloud-config-server:" + cloudVersion);
65+
List<String> entries = classpath.resolve();
66+
String mavenLocal = new File(System.getProperty("user.home"), ".m2/repository").getAbsolutePath();
67+
entries.forEach((entry) -> assertThat(entry).startsWith(mavenLocal));
68+
69+
String configServerPartialPath = "/org/springframework/cloud/spring-cloud-config-server/" + cloudVersion
70+
+ "/spring-cloud-config-server-" + cloudVersion + ".jar";
71+
String springCloudContextArtifactName = "spring-cloud-context";
72+
assertThat(entries).anyMatch(entry -> entry.contains(configServerPartialPath))
73+
.anyMatch(entry -> entry.contains(springCloudContextArtifactName));
74+
// .withFailMessage("Unable to find spring-boot-starter with path that contains "
75+
// + configServerPartialPath)
76+
}
77+
6078
@Test
6179
void resolveDependencyWhenCustomRepository() {
6280
List<RemoteRepository> repositories = new ArrayList<>();

0 commit comments

Comments
 (0)