Index: shell/console/src/main/java/org/apache/karaf/shell/console/Main.java =================================================================== --- shell/console/src/main/java/org/apache/karaf/shell/console/Main.java (revision 989104) +++ shell/console/src/main/java/org/apache/karaf/shell/console/Main.java (working copy) @@ -73,7 +73,7 @@ args = a; } - Enumeration urls = cl.getResources("META-INF/services/org/apache/karaf/shell/commands"); + Enumeration urls = cl.getResources(getDiscoveryResource()); while (urls.hasMoreElements()) { URL url = urls.nextElement(); BufferedReader r = new BufferedReader(new InputStreamReader(url.openStream())); @@ -140,6 +140,16 @@ terminalFactory.destroy(); } + /** + * Sub classes can override so that their registered commands do not conflict with the default shell + * implementation. + * + * @return + */ + public String getDiscoveryResource() { + return "META-INF/services/org/apache/karaf/shell/commands"; + } + public String getApplication() { return application; }