De-plexusize.

Build passes now.
diff --git a/indexer-cli/pom.xml b/indexer-cli/pom.xml
index 5b3890c..262e5c6 100644
--- a/indexer-cli/pom.xml
+++ b/indexer-cli/pom.xml
@@ -96,6 +96,13 @@
       <artifactId>truezip-driver-zip</artifactId>
     </dependency>
 
+    <!-- Logging (simple backend for CLI) -->
+    <dependency>
+      <groupId>org.slf4j</groupId>
+      <artifactId>slf4j-simple</artifactId>
+      <scope>compile</scope>
+    </dependency>
+
     <!-- Test -->
     <dependency>
       <groupId>junit</groupId>
@@ -138,6 +145,9 @@
               <transformers>
                 <transformer implementation="org.apache.maven.plugins.shade.resource.ComponentsXmlResourceTransformer" />
                 <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
+                <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
+                  <resource>META-INF/sisu/javax.inject.Named</resource>
+                </transformer>
                 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                   <mainClass>org.apache.maven.index.cli.NexusIndexerCli</mainClass>
                 </transformer>
diff --git a/indexer-cli/src/main/java/org/apache/maven/index/cli/NexusIndexerCli.java b/indexer-cli/src/main/java/org/apache/maven/index/cli/NexusIndexerCli.java
index 4e15375..6f6854c 100644
--- a/indexer-cli/src/main/java/org/apache/maven/index/cli/NexusIndexerCli.java
+++ b/indexer-cli/src/main/java/org/apache/maven/index/cli/NexusIndexerCli.java
@@ -46,6 +46,10 @@
 import org.apache.maven.index.packer.IndexPackingRequest;
 import org.apache.maven.index.packer.IndexPackingRequest.IndexFormat;
 import org.apache.maven.index.updater.DefaultIndexUpdater;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultContainerConfiguration;
+import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.classworlds.ClassWorld;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
@@ -240,6 +244,14 @@
     public void invokePlexusComponent( final CommandLine cli, PlexusContainer plexus )
         throws Exception
     {
+        final DefaultContainerConfiguration configuration = new DefaultContainerConfiguration();
+        configuration.setClassWorld( ( (DefaultPlexusContainer) plexus ).getClassWorld() );
+        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+
+        // replace plexus, as PlexusCli is blunt, does not allow to modify configuration
+        // TODO: get rid of PlexusCli use!
+        plexus = new DefaultPlexusContainer( configuration );
+
         if ( cli.hasOption( QUIET ) )
         {
             setLogLevel( plexus, Logger.LEVEL_DISABLED );
diff --git a/indexer-cli/src/test/java/org/apache/maven/index/cli/AbstractNexusIndexerCliTest.java b/indexer-cli/src/test/java/org/apache/maven/index/cli/AbstractNexusIndexerCliTest.java
index 8f89365..885061a 100644
--- a/indexer-cli/src/test/java/org/apache/maven/index/cli/AbstractNexusIndexerCliTest.java
+++ b/indexer-cli/src/test/java/org/apache/maven/index/cli/AbstractNexusIndexerCliTest.java
@@ -27,6 +27,8 @@
 import org.apache.maven.index.SearchType;
 import org.apache.maven.index.context.IndexCreator;
 import org.apache.maven.index.context.IndexingContext;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusTestCase;
 import org.codehaus.plexus.util.FileUtils;
 
@@ -63,6 +65,13 @@
     protected OutputStream out;
 
     @Override
+    protected void customizeContainerConfiguration( final ContainerConfiguration containerConfiguration )
+    {
+        super.customizeContainerConfiguration( containerConfiguration );
+        containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+    }
+
+    @Override
     protected void setUp()
         throws Exception
     {
diff --git a/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java b/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
index 9a3927c..39f585d 100644
--- a/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
+++ b/indexer-core/src/main/java/org/apache/maven/index/ComponentSupport.java
@@ -1,5 +1,24 @@
 package org.apache.maven.index;
 
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java b/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
index 1b14e6f..d7e1046 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/AbstractIndexCreatorHelper.java
@@ -37,7 +37,7 @@
 import org.codehaus.plexus.util.FileUtils;
 
 public class AbstractIndexCreatorHelper
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     public List<IndexCreator> DEFAULT_CREATORS;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/AbstractTestSupport.java b/indexer-core/src/test/java/org/apache/maven/index/AbstractTestSupport.java
new file mode 100644
index 0000000..5f42ea1
--- /dev/null
+++ b/indexer-core/src/test/java/org/apache/maven/index/AbstractTestSupport.java
@@ -0,0 +1,35 @@
+package org.apache.maven.index;
+
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0    
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.PlexusConstants;
+import org.codehaus.plexus.PlexusTestCase;
+
+public class AbstractTestSupport
+    extends PlexusTestCase
+{
+    @Override
+    protected void customizeContainerConfiguration( final ContainerConfiguration containerConfiguration )
+    {
+        super.customizeContainerConfiguration( containerConfiguration );
+        containerConfiguration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+    }
+}
diff --git a/indexer-core/src/test/java/org/apache/maven/index/SearchWithAnEmptyIndexTest.java b/indexer-core/src/test/java/org/apache/maven/index/SearchWithAnEmptyIndexTest.java
index 12642eb..53d5e9d 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/SearchWithAnEmptyIndexTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/SearchWithAnEmptyIndexTest.java
@@ -38,7 +38,7 @@
  * @author Olivier Lamy
  */
 public class SearchWithAnEmptyIndexTest
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     protected List<IndexCreator> indexCreators;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java b/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
index 8f4b027..5a8c0f0 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/context/NexusAnalyzerTest.java
@@ -28,11 +28,12 @@
 
 import org.apache.lucene.analysis.Tokenizer;
 import org.apache.lucene.analysis.tokenattributes.TermAttribute;
+import org.apache.maven.index.AbstractTestSupport;
 import org.apache.maven.index.IndexerField;
 import org.apache.maven.index.creator.MinimalArtifactInfoIndexCreator;
 
 public class NexusAnalyzerTest
-    extends TestCase
+    extends AbstractTestSupport
 {
     protected NexusAnalyzer nexusAnalyzer;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/creator/JarFileContentsIndexCreatorTest.java b/indexer-core/src/test/java/org/apache/maven/index/creator/JarFileContentsIndexCreatorTest.java
index d84a5e8..ef27e34 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/creator/JarFileContentsIndexCreatorTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/creator/JarFileContentsIndexCreatorTest.java
@@ -21,6 +21,7 @@
 
 import java.io.File;
 
+import org.apache.maven.index.AbstractTestSupport;
 import org.apache.maven.index.ArtifactContext;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.IndexCreator;
@@ -30,7 +31,7 @@
  * @author Alin Dreghiciu
  */
 public class JarFileContentsIndexCreatorTest
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     protected IndexCreator indexCreator;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreatorTest.java b/indexer-core/src/test/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreatorTest.java
index bb862f0..5ce3fb7 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreatorTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/creator/MavenPluginArtifactInfoIndexCreatorTest.java
@@ -23,6 +23,7 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.apache.maven.index.AbstractTestSupport;
 import org.apache.maven.index.ArtifactContext;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.context.IndexCreator;
@@ -33,7 +34,7 @@
  * @author juven
  */
 public class MavenPluginArtifactInfoIndexCreatorTest
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     protected IndexCreator indexCreator;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/creator/OsgiArtifactIndexCreatorTest.java b/indexer-core/src/test/java/org/apache/maven/index/creator/OsgiArtifactIndexCreatorTest.java
index c12c0e1..666a3bc 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/creator/OsgiArtifactIndexCreatorTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/creator/OsgiArtifactIndexCreatorTest.java
@@ -21,6 +21,7 @@
 
 import org.apache.lucene.search.BooleanClause;
 import org.apache.lucene.search.BooleanQuery;
+import org.apache.maven.index.AbstractTestSupport;
 import org.apache.maven.index.ArtifactContext;
 import org.apache.maven.index.ArtifactInfo;
 import org.apache.maven.index.FlatSearchRequest;
@@ -41,7 +42,7 @@
  * @author Olivier Lamy
  */
 public class OsgiArtifactIndexCreatorTest
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     protected IndexCreator indexCreator;
 
diff --git a/indexer-core/src/test/java/org/apache/maven/index/updater/DefaultIndexUpdaterEmbeddingIT.java b/indexer-core/src/test/java/org/apache/maven/index/updater/DefaultIndexUpdaterEmbeddingIT.java
index cc54422..8bf8b3e 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/updater/DefaultIndexUpdaterEmbeddingIT.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/updater/DefaultIndexUpdaterEmbeddingIT.java
@@ -34,9 +34,14 @@
 import org.apache.maven.index.updater.fixtures.TransferListenerFixture;
 import org.apache.maven.wagon.authentication.AuthenticationInfo;
 import org.apache.maven.wagon.events.TransferEvent;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultContainerConfiguration;
 import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
+import org.codehaus.plexus.configuration.DefaultPlexusConfiguration;
+import org.codehaus.plexus.configuration.PlexusConfiguration;
 import org.codehaus.plexus.util.FileUtils;
 
 public class DefaultIndexUpdaterEmbeddingIT
@@ -52,6 +57,45 @@
 
     private WagonHelper wagonHelper;
 
+    @Override
+    public void setUp()
+        throws Exception
+    {
+        // FIXME: Try to detect the port from the system environment.
+        int port = -1;
+        String portStr = System.getProperty( "index-server" );
+        if ( portStr != null )
+        {
+            port = Integer.parseInt( portStr );
+        }
+
+        if ( port < 1024 )
+        {
+            System.out.println( "Using default port: 8080" );
+            port = 8080;
+        }
+
+        baseUrl = "http://127.0.0.1:" + port + "/";
+
+        server = new ServerTestFixture( port );
+        final DefaultContainerConfiguration configuration = new DefaultContainerConfiguration();
+        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+        container = new DefaultPlexusContainer(configuration);
+
+        updater = container.lookup( IndexUpdater.class, "default" );
+
+        wagonHelper = new WagonHelper( container );
+    }
+
+    @Override
+    public void tearDown()
+        throws Exception
+    {
+        container.release( updater );
+        container.dispose();
+        server.stop();
+    }
+
     public void testBasicIndexRetrieval()
         throws IOException, UnsupportedExistingLuceneIndexException, ComponentLookupException
     {
@@ -425,41 +469,4 @@
         return new DefaultIndexingContext( repositoryId, repositoryId, basedir, basedir, baseUrl, baseUrl, creators,
             true );
     }
-
-    @Override
-    public void setUp()
-        throws Exception
-    {
-        // FIXME: Try to detect the port from the system environment.
-        int port = -1;
-        String portStr = System.getProperty( "index-server" );
-        if ( portStr != null )
-        {
-            port = Integer.parseInt( portStr );
-        }
-
-        if ( port < 1024 )
-        {
-            System.out.println( "Using default port: 8080" );
-            port = 8080;
-        }
-
-        baseUrl = "http://127.0.0.1:" + port + "/";
-
-        server = new ServerTestFixture( port );
-        container = new DefaultPlexusContainer();
-
-        updater = container.lookup( IndexUpdater.class, "default" );
-
-        wagonHelper = new WagonHelper( container );
-    }
-
-    @Override
-    public void tearDown()
-        throws Exception
-    {
-        container.release( updater );
-        container.dispose();
-        server.stop();
-    }
 }
\ No newline at end of file
diff --git a/indexer-core/src/test/java/org/apache/maven/index/updater/FullBootProofOfConcept.java b/indexer-core/src/test/java/org/apache/maven/index/updater/FullBootProofOfConcept.java
index aa32a26..6499027 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/updater/FullBootProofOfConcept.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/updater/FullBootProofOfConcept.java
@@ -32,7 +32,10 @@
 import org.apache.maven.index.updater.WagonHelper.WagonFetcher;
 import org.apache.maven.wagon.events.TransferEvent;
 import org.apache.maven.wagon.events.TransferListener;
+import org.codehaus.plexus.ContainerConfiguration;
+import org.codehaus.plexus.DefaultContainerConfiguration;
 import org.codehaus.plexus.DefaultPlexusContainer;
+import org.codehaus.plexus.PlexusConstants;
 import org.codehaus.plexus.PlexusContainer;
 import org.codehaus.plexus.PlexusContainerException;
 import org.codehaus.plexus.component.repository.exception.ComponentLookupException;
@@ -102,7 +105,9 @@
 
         basedir.mkdirs();
 
-        PlexusContainer container = new DefaultPlexusContainer();
+        final DefaultContainerConfiguration configuration = new DefaultContainerConfiguration();
+        configuration.setClassPathScanning( PlexusConstants.SCANNING_INDEX );
+        PlexusContainer container = new DefaultPlexusContainer(configuration);
 
         IndexCreator min = container.lookup( IndexCreator.class, "min" );
         IndexCreator jar = container.lookup( IndexCreator.class, "jarContent" );
diff --git a/indexer-core/src/test/java/org/apache/maven/index/util/IndexCreatorSorterTest.java b/indexer-core/src/test/java/org/apache/maven/index/util/IndexCreatorSorterTest.java
index 8dd1e9a..a0efb29 100644
--- a/indexer-core/src/test/java/org/apache/maven/index/util/IndexCreatorSorterTest.java
+++ b/indexer-core/src/test/java/org/apache/maven/index/util/IndexCreatorSorterTest.java
@@ -23,12 +23,13 @@
 import java.util.Arrays;
 import java.util.List;
 
+import org.apache.maven.index.AbstractTestSupport;
 import org.apache.maven.index.context.IndexCreator;
 import org.codehaus.plexus.PlexusTestCase;
 import org.junit.Assert;
 
 public class IndexCreatorSorterTest
-    extends PlexusTestCase
+    extends AbstractTestSupport
 {
     public void testLookupList()
         throws Exception