boot
boot copied to clipboard
http repository workaround not working
Problem Description
I am working with a maven repository that is running on http. It is internal and cannot be accessed from the outside so there's little possibility of MITM. Using the provided snippet to configure http
(require 'cemerick.pomegranate.aether)
(cemerick.pomegranate.aether/register-wagon-factory!
"http" #(org.apache.maven.wagon.providers.http.HttpWagon.))
doesn't work:
Deploying cica-0.1.0.jar...
clojure.lang.ExceptionInfo: Failed to deploy artifacts/metadata: Cannot access http://mr01.hq.gratex.com/nexus/content/repositories/releases with type default using the available connector factories: BasicRepositoryConnectorFactory {:line 65}
at clojure.core$ex_info.invokeStatic(core.clj:4739)
at clojure.core$ex_info.invoke(core.clj:4739)
at boot.main$_main$fn__1868.invoke(main.clj:222)
at boot.main$_main.invoke(main.clj:216)
at clojure.lang.Var.invoke(Var.java:396)
at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:159)
at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:150)
at boot.App.runBoot(App.java:407)
at boot.App.main(App.java:500)
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:498)
at Boot.main(Boot.java:257)
Caused by: org.eclipse.aether.deployment.DeploymentException: Failed to deploy artifacts/metadata: Cannot access http://mr01.hq.gratex.com/nexus/content/repositories/releases with type default using the available connector factories: BasicRepositoryConnectorFactory
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:278)
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:254)
at org.eclipse.aether.internal.impl.DefaultRepositorySystem.deploy(DefaultRepositorySystem.java:422)
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:498)
at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:93)
at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28)
at cemerick.pomegranate.aether$deploy_artifacts.doInvoke(aether.clj:361)
at clojure.lang.RestFn.applyTo(RestFn.java:137)
at clojure.core$apply.invokeStatic(core.clj:657)
at clojure.core$apply.invoke(core.clj:652)
at cemerick.pomegranate.aether$deploy.doInvoke(aether.clj:434)
at clojure.lang.RestFn.invoke(RestFn.java:1096)
at boot.aether$deploy.invoke(aether.clj:358)
at clojure.lang.AFn.applyToHelper(AFn.java:171)
at clojure.lang.AFn.applyTo(AFn.java:144)
at clojure.lang.Var.applyTo(Var.java:702)
at clojure.core$apply.invokeStatic(core.clj:657)
at clojure.core$apply.invoke(core.clj:652)
at boot.pod$eval_fn_call.invoke(pod.clj:359)
at boot.pod$call_in_STAR_.invoke(pod.clj:410)
at clojure.lang.Var.invoke(Var.java:381)
at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:109)
at org.projectodd.shimdandy.impl.ClojureRuntimeShimImpl.invoke(ClojureRuntimeShimImpl.java:102)
at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at clojure.lang.Reflector.invokeMatchingMethod(Reflector.java:93)
at clojure.lang.Reflector.invokeInstanceMethod(Reflector.java:28)
at boot.pod$call_in_STAR_.invoke(pod.clj:413)
at boot.task.built_in$fn__3118$fn__3119$fn__3124$fn__3125.invoke(built_in.clj:1079)
at boot.task.built_in$fn__3070$fn__3071$fn__3076$fn__3077.invoke(built_in.clj:978)
at boot.task.built_in$fn__2940$fn__2941$fn__2946$fn__2947.invoke(built_in.clj:875)
at boot.task.built_in$fn__2585$fn__2586$fn__2595$fn__2596.invoke(built_in.clj:576)
at boot.core$run_tasks.invoke(core.clj:1022)
at boot.core$boot$fn__937.invoke(core.clj:1032)
at clojure.core$binding_conveyor_fn$fn__5476.invoke(core.clj:2022)
at clojure.lang.AFn.call(AFn.java:18)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.eclipse.aether.transfer.NoRepositoryConnectorException: Cannot access http://mr01.hq.gratex.com/nexus/content/repositories/releases with type default using the available connector factories: BasicRepositoryConnectorFactory
at org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider.newRepositoryConnector(DefaultRepositoryConnectorProvider.java:183)
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:274)
... 43 more
Caused by: org.eclipse.aether.transfer.NoRepositoryConnectorException: Cannot access http://mr01.hq.gratex.com/nexus/content/repositories/releases using the registered transporter factories: FileTransporterFactory, WagonTransporterFactory
at org.eclipse.aether.connector.basic.BasicRepositoryConnector.<init>(BasicRepositoryConnector.java:128)
at org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory.newInstance(BasicRepositoryConnectorFactory.java:189)
at org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider.newRepositoryConnector(DefaultRepositoryConnectorProvider.java:122)
... 44 more
Caused by: org.eclipse.aether.transfer.NoTransporterException: Cannot access http://mr01.hq.gratex.com/nexus/content/repositories/releases using the registered transporter factories: FileTransporterFactory, WagonTransporterFactory
at org.eclipse.aether.internal.impl.DefaultTransporterProvider.newTransporter(DefaultTransporterProvider.java:160)
at org.eclipse.aether.connector.basic.BasicRepositoryConnector.<init>(BasicRepositoryConnector.java:124)
... 46 more
Steps to reproduce
- add the
register-wagon-factory!snippet - try to
boot pushto it
Platform details
Platform Linux Platform version ubuntu 18.04.1 JRE/JDK version openjdk 1.8.0_181
Boot details
Boot version 2.8.2
build.boot present? yes
~/.boot/profile present? yes
Task name? push
profile.boot and build.boot don't contain anything special except the snippet provided above. The same snippet works reliably with leiningen
FYI boot 2.7.2 (i.e. the version before doing this breaking change) works as expected