Repository: karaf
Updated Branches:
  refs/heads/karaf-3.0.x 1533ce483 -> d84d8703f


[KARAF-3611]avoid the java.lang.Error: factory already defined


Project: http://git-wip-us.apache.org/repos/asf/karaf/repo
Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/d84d8703
Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/d84d8703
Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/d84d8703

Branch: refs/heads/karaf-3.0.x
Commit: d84d8703f4b2cbc036f7d4d01a6cc42ca19469d6
Parents: 1533ce4
Author: Freeman Fang <[email protected]>
Authored: Tue Sep 29 21:45:58 2015 +0800
Committer: Freeman Fang <[email protected]>
Committed: Tue Sep 29 21:45:58 2015 +0800

----------------------------------------------------------------------
 .../karaf/tooling/features/InstallKarsMojo.java | 32 +++++++++-----------
 1 file changed, 14 insertions(+), 18 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/karaf/blob/d84d8703/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
----------------------------------------------------------------------
diff --git 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
index 089c77a..0b30f28 100644
--- 
a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
+++ 
b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/InstallKarsMojo.java
@@ -52,6 +52,19 @@ import org.apache.maven.plugin.MojoFailureException;
  * @description Install kar dependencies
  */
 public class InstallKarsMojo extends MojoSupport {
+    static {
+        URL.setURLStreamHandlerFactory(new URLStreamHandlerFactory() {
+            public URLStreamHandler createURLStreamHandler(String protocol) {
+                if ("wrap".equals(protocol)) {
+                    return new org.ops4j.pax.url.wrap.Handler();
+                }
+                if ("mvn".equals(protocol)) {
+                    return new org.ops4j.pax.url.mvn.Handler();
+                }
+                return null;
+            }
+        });
+    }
     
     private static String GENERATED_BUNDLE_FOLDER = "generated";
 
@@ -293,24 +306,7 @@ public class InstallKarsMojo extends MojoSupport {
         // install bundles defined in startup.properties
         getLog().info("Installing bundles defined in startup.properties in the 
system");
         Set<?> startupBundles = startupProperties.keySet();
-        try {
-            URL.setURLStreamHandlerFactory(new URLStreamHandlerFactory() {
-                public URLStreamHandler createURLStreamHandler(String 
protocol) {
-                    if ("wrap".equals(protocol)) {
-                        return new org.ops4j.pax.url.wrap.Handler();
-                    }
-                    if ("mvn".equals(protocol)) {
-                        return new org.ops4j.pax.url.mvn.Handler();
-                    }
-                    return null;
-                }
-            });
-        } catch (Error er) {
-            if (!er.getMessage().equals("factory already defined")) {
-                throw new MojoExecutionException("can't set customer 
URLStreamHandlerFactory", er);
-            } 
-        }
-        
+                
         for (Object startupBundle : startupBundles) {
             if (((String)startupBundle).startsWith("wrap:")) {
                 try {

Reply via email to