title: Can't run basic example using KIE-CI for Drools, buried in dependencies errors
body: <p>Following example on : <a href="http://docs.jboss.org/drools/release/6.0.1.Final/drools-docs/html/DroolsReleaseNotesChapter.html#d0e496" rel="nofollow">2.1.5. KieModules, KieContainer and KIE-CI</a>.
  Trying to execute the following, code and retrieve the snapshot from my local repo. The snapshot is well known examples package for drools. </p>
  
  <pre><code>   public static void main(String[] args) {
  
          KieServices ks = KieServices.Factory.get();
          KieContainer kContainer = ks.newKieContainer(
  
          ks.newReleaseId("org.drools", "default-kiesession", "6.2.0-SNAPSHOT") );
  
      }
  </code></pre>
  
  <p>I get buried in nested dependency exeptions when trying to run the following simple code where resolving one by one I cant see the light at the end of the tunnel. As you can see in the pom below the list of dependencies grows endlessly and is huge for 3 lines of code and whenever i try to run my example I keep getting more and more class not found errors... </p>
  
  <p>
          org.kie
          kie-ci
          6.2.0-SNAPSHOT
      </p>
  
  <pre><code>&lt;dependency&gt;
      &lt;groupId&gt;org.kie&lt;/groupId&gt;
      &lt;artifactId&gt;kie-api&lt;/artifactId&gt;
      &lt;version&gt;6.2.0-SNAPSHOT&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.kie&lt;/groupId&gt;
      &lt;artifactId&gt;kie-internal&lt;/artifactId&gt;
      &lt;version&gt;6.2.0-SNAPSHOT&lt;/version&gt;
  &lt;/dependency&gt;
  
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
      &lt;artifactId&gt;slf4j-simple&lt;/artifactId&gt;
      &lt;version&gt;1.7.7&lt;/version&gt;
  
  &lt;/dependency&gt;
  &lt;dependency&gt;
      &lt;groupId&gt;org.drools&lt;/groupId&gt;
      &lt;artifactId&gt;drools-core&lt;/artifactId&gt;
      &lt;version&gt;6.2.0-SNAPSHOT&lt;/version&gt;
  &lt;/dependency&gt;
  &lt;dependency&gt;
      &lt;groupId&gt;org.drools&lt;/groupId&gt;
      &lt;artifactId&gt;drools-compiler&lt;/artifactId&gt;
      &lt;version&gt;6.2.0-SNAPSHOT&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.sonatype.aether&lt;/groupId&gt;
      &lt;artifactId&gt;aether-api&lt;/artifactId&gt;
      &lt;version&gt;1.13.1&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.sonatype.aether&lt;/groupId&gt;
      &lt;artifactId&gt;aether-util&lt;/artifactId&gt;
      &lt;version&gt;1.13.1&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.apache.maven&lt;/groupId&gt;
      &lt;artifactId&gt;maven-plugin-api&lt;/artifactId&gt;
      &lt;version&gt;3.2.2&lt;/version&gt;
  &lt;/dependency&gt;
  &lt;dependency&gt;
      &lt;groupId&gt;org.apache.maven&lt;/groupId&gt;
      &lt;artifactId&gt;maven-model&lt;/artifactId&gt;
      &lt;version&gt;3.2.2&lt;/version&gt;
  &lt;/dependency&gt;
  &lt;dependency&gt;
      &lt;groupId&gt;org.apache.maven&lt;/groupId&gt;
      &lt;artifactId&gt;maven-core&lt;/artifactId&gt;
      &lt;version&gt;3.2.2&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;org.apache.maven&lt;/groupId&gt;
      &lt;artifactId&gt;maven-aether-provider&lt;/artifactId&gt;
      &lt;version&gt;3.0.5&lt;/version&gt;
  &lt;/dependency&gt;
  
  &lt;dependency&gt;
      &lt;groupId&gt;args4j&lt;/groupId&gt;
      &lt;artifactId&gt;args4j-tools&lt;/artifactId&gt;
      &lt;version&gt;2.0.23&lt;/version&gt;
  &lt;/dependency&gt;
  &lt;!--&lt;dependency&gt;--&gt;
      &lt;!--&lt;groupId&gt;org.apache.maven&lt;/groupId&gt;--&gt;
      &lt;!--&lt;artifactId&gt;maven-aether-provider&lt;/artifactId&gt;--&gt;
      &lt;!--&lt;version&gt;3.0.5&lt;/version&gt;--&gt;
  &lt;!--&lt;/dependency&gt;--&gt;
  
  &lt;!--&lt;dependency&gt;--&gt;
      &lt;!--&lt;groupId&gt;org.apache.maven&lt;/groupId&gt;--&gt;
      &lt;!--&lt;artifactId&gt;maven-settings-builder&lt;/artifactId&gt;--&gt;
      &lt;!--&lt;version&gt;3.2.1&lt;/version&gt;--&gt;
  &lt;!--&lt;/dependency&gt;--&gt;
  </code></pre>
  
  <p>I've spent good 3 hours till got to the breaking point, current results:</p>
  
  <pre><code>[main] WARN org.kie.scanner.embedder.MavenSettings - Environment variable M2_HOME is not set
  [main] WARN Sisu - Error injecting: org.apache.maven.execution.DefaultMavenExecutionRequestPopulator
  com.google.inject.ProvisionException: Guice provision errors:
  
  1) No implementation for org.apache.maven.repository.RepositorySystem was bound.
    while locating org.apache.maven.execution.DefaultMavenExecutionRequestPopulator
  
  1 error
      at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:974)
      at com.google.inject.internal.InjectorImpl.getInstance(InjectorImpl.java:1000)
      at org.eclipse.sisu.space.AbstractDeferredClass.get(AbstractDeferredClass.java:48)
      at com.google.inject.internal.ProviderInternalFactory.provision(ProviderInternalFactory.java:84)
      at com.google.inject.internal.InternalFactoryToInitializableAdapter.provision(InternalFactoryToInitializableAdapter.java:52)
      at com.google.inject.internal.ProviderInternalFactory$1.call(ProviderInternalFactory.java:70)
      at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:100)
      at org.eclipse.sisu.plexus.PlexusLifecycleManager.onProvision(PlexusLifecycleManager.java:133)
      at com.google.inject.internal.ProvisionListenerStackCallback$Provision.provision(ProvisionListenerStackCallback.java:108)
      at com.google.inject.internal.ProvisionListenerStackCallback.provision(ProvisionListenerStackCallback.java:55)
      at com.google.inject.internal.ProviderInternalFactory.circularGet(ProviderInternalFactory.java:68)
      at com.google.inject.internal.InternalFactoryToInitializableAdapter.get(InternalFactoryToInitializableAdapter.java:45)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter$1.call(ProviderToInternalFactoryAdapter.java:46)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1018)
      at com.google.inject.internal.ProviderToInternalFactoryAdapter.get(ProviderToInternalFactoryAdapter.java:40)
      at com.google.inject.Scopes$1$1.get(Scopes.java:59)
      at com.google.inject.internal.InternalFactoryToProviderAdapter.get(InternalFactoryToProviderAdapter.java:41)
      at com.google.inject.internal.InjectorImpl$3$1.call(InjectorImpl.java:965)
      at com.google.inject.internal.InjectorImpl.callInContext(InjectorImpl.java:1011)
      at com.google.inject.internal.InjectorImpl$3.get(InjectorImpl.java:961)
      at org.eclipse.sisu.inject.LazyBeanEntry.getValue(LazyBeanEntry.java:82)
      at org.eclipse.sisu.plexus.LazyPlexusBean.getValue(LazyPlexusBean.java:51)
      at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:260)
      at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:252)
      at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:246)
      at org.kie.scanner.embedder.MavenEmbedder.lookup(MavenEmbedder.java:492)
      at org.kie.scanner.embedder.MavenEmbedder.buildMavenExecutionRequest(MavenEmbedder.java:136)
      at org.kie.scanner.embedder.MavenEmbedder.&lt;init&gt;(MavenEmbedder.java:99)
      at org.kie.scanner.embedder.MavenEmbedder.&lt;init&gt;(MavenEmbedder.java:88)
      at org.kie.scanner.embedder.MavenEmbedder.&lt;init&gt;(MavenEmbedder.java:115)
      at org.kie.scanner.embedder.MavenProjectLoader.parseMavenPom(MavenProjectLoader.java:23)
      at org.kie.scanner.embedder.MavenProjectLoader.loadMavenProject(MavenProjectLoader.java:54)
      at org.kie.scanner.Aether.&lt;init&gt;(Aether.java:45)
      at org.kie.scanner.Aether.getAether(Aether.java:55)
      at org.kie.scanner.MavenRepository.getMavenRepository(MavenRepository.java:73)
      at org.kie.scanner.ArtifactResolver.&lt;init&gt;(ArtifactResolver.java:36)
      at org.kie.scanner.KieRepositoryScannerImpl.getArtifactResolver(KieRepositoryScannerImpl.java:87)
      at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:97)
      at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:93)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.loadKieModuleFromMavenRepo(KieRepositoryImpl.java:114)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:100)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:77)
      at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:97)
      at test.main(test.java:13)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:483)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
  [main] WARN org.kie.api.builder.KieScanner - Unable to parse pom.xml file of the running project: org.kie.scanner.embedder.MavenEmbedderException: com.google.inject.ProvisionException: Guice provision errors:
  
  1) No implementation for org.apache.maven.repository.RepositorySystem was bound.
    while locating org.apache.maven.execution.DefaultMavenExecutionRequestPopulator
    at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
    at ClassRealm[maven, parent: ClassRealm[maven-parent, parent: null]]
    while locating org.apache.maven.execution.MavenExecutionRequestPopulator
  
  1 error
        role: org.apache.maven.execution.MavenExecutionRequestPopulator
    roleHint: 
  Exception in thread "main" java.lang.NoClassDefFoundError: org/sonatype/aether/connector/file/FileRepositoryConnectorFactory
      at org.kie.scanner.Aether.newRepositorySystem(Aether.java:87)
      at org.kie.scanner.Aether.&lt;init&gt;(Aether.java:63)
      at org.kie.scanner.Aether.&lt;init&gt;(Aether.java:45)
      at org.kie.scanner.Aether.getAether(Aether.java:55)
      at org.kie.scanner.MavenRepository.getMavenRepository(MavenRepository.java:73)
      at org.kie.scanner.ArtifactResolver.&lt;init&gt;(ArtifactResolver.java:36)
      at org.kie.scanner.KieRepositoryScannerImpl.getArtifactResolver(KieRepositoryScannerImpl.java:87)
      at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:97)
      at org.kie.scanner.KieRepositoryScannerImpl.loadArtifact(KieRepositoryScannerImpl.java:93)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.loadKieModuleFromMavenRepo(KieRepositoryImpl.java:114)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:100)
      at org.drools.compiler.kie.builder.impl.KieRepositoryImpl.getKieModule(KieRepositoryImpl.java:77)
      at org.drools.compiler.kie.builder.impl.KieServicesImpl.newKieContainer(KieServicesImpl.java:97)
      at test.main(test.java:13)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:483)
      at com.intellij.rt.execution.application.AppMain.main(AppMain.java:134)
  Caused by: java.lang.ClassNotFoundException: org.sonatype.aether.connector.file.FileRepositoryConnectorFactory
      at java.net.URLClassLoader$1.run(URLClassLoader.java:372)
      at java.net.URLClassLoader$1.run(URLClassLoader.java:361)
      at java.security.AccessController.doPrivileged(Native Method)
      at java.net.URLClassLoader.findClass(URLClassLoader.java:360)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
      ... 19 more
  
  Process finished with exit code 1
  </code></pre>
  
  <p>I cant get why so simple example must be so horrendously difficult to run.</p>