diff --git a/plexus-compiler-test/pom.xml b/plexus-compiler-test/pom.xml
index 3dcab953..e57b9015 100644
--- a/plexus-compiler-test/pom.xml
+++ b/plexus-compiler-test/pom.xml
@@ -57,6 +57,10 @@
org.codehaus.plexus
plexus-utils
+
+ org.codehaus.plexus
+ plexus-interpolation
+
org.codehaus.plexus
plexus-xml
diff --git a/plexus-compiler-test/src/main/java/org/codehaus/plexus/compiler/AbstractCompilerTest.java b/plexus-compiler-test/src/main/java/org/codehaus/plexus/compiler/AbstractCompilerTest.java
index 977ffbd1..cd79a06f 100644
--- a/plexus-compiler-test/src/main/java/org/codehaus/plexus/compiler/AbstractCompilerTest.java
+++ b/plexus-compiler-test/src/main/java/org/codehaus/plexus/compiler/AbstractCompilerTest.java
@@ -26,12 +26,7 @@
import javax.inject.Inject;
import java.io.File;
-import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
import java.util.stream.Collectors;
import org.apache.maven.artifact.Artifact;
@@ -43,6 +38,7 @@
import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.settings.Settings;
import org.apache.maven.settings.io.xpp3.SettingsXpp3Reader;
+import org.codehaus.plexus.interpolation.*;
import org.codehaus.plexus.testing.PlexusTest;
import org.codehaus.plexus.util.FileUtils;
import org.codehaus.plexus.util.ReaderFactory;
@@ -85,6 +81,13 @@ final void setUpLocalRepo() throws Exception {
if (settingsFile.exists()) {
Settings settings = new SettingsXpp3Reader().read(ReaderFactory.newXmlReader(settingsFile));
localRepo = settings.getLocalRepository();
+ if (localRepo != null && localRepo.contains("${") && localRepo.contains("}")) {
+ Interpolator interpolator = new StringSearchInterpolator();
+ interpolator.addValueSource(new PropertiesBasedValueSource(System.getProperties()));
+ interpolator.addValueSource(
+ new PrefixedValueSourceWrapper(new MapBasedValueSource(System.getenv()), "env"));
+ localRepo = interpolator.interpolate(localRepo);
+ }
}
}
if (localRepo == null) {
diff --git a/pom.xml b/pom.xml
index 13171985..309ff11b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -133,6 +133,11 @@
plexus-utils
4.0.0
+
+ org.codehaus.plexus
+ plexus-interpolation
+ 1.26
+
org.codehaus.plexus
plexus-xml