This is an automated email from the ASF dual-hosted git repository.
sijie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/bookkeeper.git
The following commit(s) were added to refs/heads/master by this push:
new 8bd6f02 Specify repo in MavenClassLoader
8bd6f02 is described below
commit 8bd6f0270fdb36de3c7b7e0bf92eb48d39bdf52e
Author: Ivan Kelly <[email protected]>
AuthorDate: Thu Feb 15 02:09:31 2018 +0800
Specify repo in MavenClassLoader
This is required for testing yahoo's custom bookkeeper client, as it
doesn't reside in maven central.
Author: Ivan Kelly <[email protected]>
Reviewers: Enrico Olivelli <[email protected]>, Sijie Guo
<[email protected]>
This closes #1135 from ivankelly/classloader-repo
---
.../org/apache/bookkeeper/tests/MavenClassLoader.java | 15 +++++++++++++--
1 file changed, 13 insertions(+), 2 deletions(-)
diff --git
a/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/MavenClassLoader.java
b/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/MavenClassLoader.java
index 6f31f5c..a7091be 100644
---
a/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/MavenClassLoader.java
+++
b/tests/integration-tests-utils/src/main/java/org/apache/bookkeeper/tests/MavenClassLoader.java
@@ -31,6 +31,7 @@ import java.util.Arrays;
import java.util.List;
import java.util.Optional;
+import org.jboss.shrinkwrap.resolver.api.maven.ConfigurableMavenResolverSystem;
import org.jboss.shrinkwrap.resolver.api.maven.Maven;
import org.jboss.shrinkwrap.resolver.api.maven.ScopeType;
import org.jboss.shrinkwrap.resolver.api.maven.coordinate.MavenDependencies;
@@ -48,8 +49,18 @@ public class MavenClassLoader implements AutoCloseable {
private final URLClassLoader classloader;
+ public static MavenClassLoader forArtifact(String repo, String
mainArtifact) throws Exception {
+ return
createClassLoader(Maven.configureResolver().withRemoteRepo("custom", repo,
"default"),
+ mainArtifact);
+ }
+
public static MavenClassLoader forArtifact(String mainArtifact) throws
Exception {
- Optional<String> slf4jVersion =
Arrays.stream(Maven.resolver().resolve(mainArtifact)
+ return createClassLoader(Maven.configureResolver(), mainArtifact);
+ }
+
+ private static MavenClassLoader
createClassLoader(ConfigurableMavenResolverSystem resolver,
+ String mainArtifact)
throws Exception {
+ Optional<String> slf4jVersion =
Arrays.stream(resolver.resolve(mainArtifact)
.withTransitivity().asResolvedArtifact())
.filter((a) -> a.getCoordinate().getGroupId().equals("org.slf4j")
&&
a.getCoordinate().getArtifactId().equals("slf4j-log4j12"))
@@ -66,7 +77,7 @@ public class MavenClassLoader implements AutoCloseable {
ScopeType.COMPILE,
false));
}
- File[] files = Maven.resolver().addDependencies(deps.toArray(new
MavenDependency[0]))
+ File[] files = resolver.addDependencies(deps.toArray(new
MavenDependency[0]))
.resolve().withTransitivity().asFile();
URLClassLoader cl = AccessController.doPrivileged(
new PrivilegedAction<URLClassLoader>() {
--
To stop receiving notification emails like this one, please contact
[email protected].