2016-02-05 4 views
0

Ниже код пытается установить артефакты, определенные в функции от этого места http://repository.apache.org/content/groups/snapshots-group/ есть способ дать другое хранилище места для загрузки и установки.Как дать хранилище URL в karaf конфигурации paxexam

@Configuration 
     public static Option[] configuration() throws Exception { 

      return new Option[] { 
       KarafDistributionOption.debugConfiguration("8889", true), 
       karafDistributionConfiguration().frameworkUrl(maven().groupId("org.apache.karaf").artifactId("apache-karaf") 
          .type("zip").version("4.0.3")) 
        .unpackDirectory(new File("target/paxexam/unpack/")) 
        .useDeployFolder(false), 
        configureConsole().ignoreLocalConsole(), 
        logLevel(LogLevel.INFO), 
        keepRuntimeFolder(),provision(
          mavenBundle() 
          .groupId("test") 
          .artifactId("DBHandler").version("0.0.1-SNAPSHOT").classifier("features").start()) 

      }; 
      } 

Когда приведенный выше код выполняется в данный момент я получаю ошибку ниже

shaded.org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact test:DBHandler:jar:features:0.0.1-SNAPSHOT in apache (http://repository.apache.org/content/groups/snapshots-group/) 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:573)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:528)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:506)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:481)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.apache.karaf.features.internal.download.impl.MavenDownloadTask.download(MavenDownloadTask.java:34)[9:org.apache.karaf.features.core:4.0.3] 
    at org.apache.karaf.features.internal.download.impl.AbstractRetryableDownloadTask.run(AbstractRetryableDownloadTask.java:58)[9:org.apache.karaf.features.core:4.0.3] 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)[:1.7.0_79] 
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_79] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)[:1.7.0_79] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)[:1.7.0_79] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_79] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_79] 
    at java.lang.Thread.run(Thread.java:745)[:1.7.0_79] 
Caused by: shaded.org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact test:DBHandler:jar:features:0.0.1-SNAPSHOT in apache (http://repository.apache.org/content/groups/snapshots-group/) 
    at shaded.org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:39)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:581)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:249)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:520)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)[4:org.ops4j.pax.url.mvn:2.4.3] 
    ... 16 more 
2016-02-06 00:23:52,754 | WARN | pool-10-thread-3 | AetherBasedResolver    | 5 - org.ops4j.pax.logging.pax-logging-api - 1.8.4 | Error resolving artifacttest:DBHandler:jar:features:0.0.1-SNAPSHOT:Could not find artifact test:DBHandler:jar:features:0.0.1-SNAPSHOT in apache (http://repository.apache.org/content/groups/snapshots-group/) 
shaded.org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact test:DBHandler:jar:features:0.0.1-SNAPSHOT in apache (http://repository.apache.org/content/groups/snapshots-group/) 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifact(DefaultArtifactResolver.java:223)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveArtifact(DefaultRepositorySystem.java:294)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:573)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:528)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:506)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.ops4j.pax.url.mvn.internal.AetherBasedResolver.resolve(AetherBasedResolver.java:481)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at org.apache.karaf.features.internal.download.impl.MavenDownloadTask.download(MavenDownloadTask.java:34)[9:org.apache.karaf.features.core:4.0.3] 
    at org.apache.karaf.features.internal.download.impl.AbstractRetryableDownloadTask.run(AbstractRetryableDownloadTask.java:58)[9:org.apache.karaf.features.core:4.0.3] 
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)[:1.7.0_79] 
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)[:1.7.0_79] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:178)[:1.7.0_79] 
    at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:292)[:1.7.0_79] 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)[:1.7.0_79] 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)[:1.7.0_79] 
    at java.lang.Thread.run(Thread.java:745)[:1.7.0_79] 
Caused by: shaded.org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact test:DBHandler:jar:features:0.0.1-SNAPSHOT in apache (http://repository.apache.org/content/groups/snapshots-group/) 
    at shaded.org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:39)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector$DirectExecutor.execute(BasicRepositoryConnector.java:581)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.connector.basic.BasicRepositoryConnector.get(BasicRepositoryConnector.java:249)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.performDownloads(DefaultArtifactResolver.java:520)[4:org.ops4j.pax.url.mvn:2.4.3] 
    at shaded.org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:421)[4:org.ops4j.pax.url.mvn:2.4.3] 
    ... 16 more 

ответ

2

Вы можете динамически пропатчить файл etc/org.ops4j.pax.url.mvn.cfg добавить свои хранилища:

editConfigurationFilePut("etc/org.ops4j.pax.url.mvn.cfg", 
    "org.ops4j.pax.url.mvn.repositories", 
    "http://repo1.maven.org/[email protected]=central, ...") 

Существует хранилище тоже, но я никогда не использовал его

+0

Я пробовал это решение. Он все еще указывает на неправильное репо. Любые другие предложения – Charity