boot icon indicating copy to clipboard operation
boot copied to clipboard

http repository workaround not working

Open xificurC opened this issue 7 years ago • 1 comments

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 push to 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

xificurC avatar Oct 16 '18 10:10 xificurC

FYI boot 2.7.2 (i.e. the version before doing this breaking change) works as expected

xificurC avatar Oct 16 '18 10:10 xificurC