ResolutionException when building mesosphere marathon using artifactory proxy -- ${packaging.type}
See original GitHub issueI have set up an artifactory proxy at our lab (available at prl4:8081
). When I try to build mesosphere marathon (it uses coursier 1.0.3) I get the following error:
[error] coursier.ResolutionException: 1 download error
[error] Caught java.io.IOException: Server returned HTTP response code: 400 for URL: http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type} (Server returned HTTP response code: 400 for URL: http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}) while downloading http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}
[error] (update) coursier.ResolutionException: 1 download error
[error] Caught java.io.IOException: Server returned HTTP response code: 400 for URL: http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type} (Server returned HTTP response code: 400 for URL: http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}) while downloading http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}
If I build it without the proxy it works.
When I look at what the coursier fetches in the two cases I see that in the case of without artifactory, it additionally creates the following file:
$ ls /home/krikava/.cache/coursier/v1/https/repo1.maven.org/maven2/javax/ws/rs/javax.ws.rs-api/2.1
...
.javax.ws.rs-api-2.1.%24{packaging.type}.error
...
If I copy that file into the local coursier cache for artifactory:
/home/krikava/.cache/coursier/v1/http/prl4%3A8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1
it continues to work.
I double checked, but both requests:
- https://repo1.maven.org/maven2/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}
- http://prl4:8081/artifactory/mvn-releases/javax/ws/rs/javax.ws.rs-api/2.1/javax.ws.rs-api-2.1.${packaging.type}
do return HTTP 404. Why does coursier report HTTP 400?
Is there something I need to set up specifically in artifactory?
Issue Analytics
- State:
- Created 5 years ago
- Comments:6 (5 by maintainers)
Top Results From Across the Web
How to troubleshoot why you can't resolve from a remote ...
For remote repositories, Artifactory will always check the upstream server (the server that Artifactory is proxying, such as npmjs.org) for ...
Read more >Smart Remote Repositories - JFrog - JFrog Documentation
When you proxy a repository in another instance of Artifactory, ... the repository in the remote Artifactory instance for all package types, ...
Read more >Advanced Settings - JFrog - JFrog Documentation
Overview. The advanced settings for a remote repository configure network access behavior, cache management and several other parameters ...
Read more >VCS Repositories - JFrog - JFrog Documentation
Artifactory's built-in default layout for VCS repositories (vcs-default) ... click New Remote Repository and set VCS to be the Package Type.
Read more >No Internet? No Problem. Use Artifactory with an Air Gap – Part I
A build tool requests a dependency from the virtual repository on the internal Artifactory instance; If the dependency can't be found internally ...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
https://github.com/coursier/coursier/pull/1213 should fix that (thanks for the repro, @2m!)
I was able to release sbt-coursier locally and it works great! 😃