Hello guys, I have a question on coursier resolution exception that I can't figure out a way around. I am using sbt 1.3.13 with 1.0.3 coursier plugin (not using latest coursier due to sbt/sbt#5040). My default scalaVersion is 2.12, however I am trying to compile one subproject on 2.11 only which depends on a couple of other subprojects that are cross compatible for scala 2.11 and 2.12. So it looks like --
module A (scala 2.11 only) depends on module B (supports both 2.11 and 2.12) and module C (supports both 2.11 and 2.12).
When I try
sbt +module A/test:compile, everything works fine.
But when I do
sbt +test:compile, I get a dependency resolution exception as --
ObjectEvent(error, TraceEvent(Error, coursier.ResolutionException: Encountered 2 error(s) in dependency resolution: com.org:moduleB_2.11:0.1-SNAPSHOT: not found: /home/org/.ivy2/local/com.org/moduleB_2.11/0.1-SNAPSHOT/ivys/ivy.xml https://repo1.maven.org/maven2/com/org/moduleB_2.11/0.1-SNAPSHOT/moduleB_2.11-0.1-SNAPSHOT.pom com.org:moduleC_2.11:0.1-SNAPSHOT: not found: /home/org/.ivy2/local/com.org/moduleC_2.11/0.1-SNAPSHOT/ivys/ivy.xml https://repo1.maven.org/maven2/com/org/moduleC_2.11/0.1-SNAPSHOT/moduleC_2.11-0.1-SNAPSHOT.pom
So I am a bit baffled here is there any difference in terms of coursier resolution when just the moduleA is compiled vs all subprojects get cross compiled. What am I supposed to interpret out of this?
Hi, in mill we got the following issue opened lihaoyi/mill#1099:
Actually, Mill seems to pull dependencies by directly building an URL to the supposed pom. However, this method doesn't work on some repositories like for Spigot dependencies.
Mill should first pull the first maven-metadata.xml (example) at
<repoUrl>/<group separated by />/<artifactId>/maven-metadata.xmlto retrieve the version's metadata file (example) and get the jar name from it.
Does coursier support
Hi everyone, I got a strange resolution question. Consider the code below:
val module = mod"com.streese.registravka4s::registravka4s-core" // val module = mod"com.sksamuel.avro4s::avro4s-core" val res = Resolve() .addDependencies(Dependency(module, "latest.release")) .addRepositories(MavenRepository("https://packages.confluent.io/maven/")) .run()
When I run this for the module that is not commented out (registravka4s) I get the following error:
[error] (run-main-6) coursier.error.ResolutionError$CantDownloadModule: Error downloading com.streese.registravka4s:registravka4s-core_2.13:latest.release [error] No latest release version found in file:/home/max/.ivy2/local/com.streese.registravka4s/registravka4s-core_2.13/ [error] not found: https://repo1.maven.org/maven2/com/streese/registravka4s/registravka4s-core_2.13/maven-metadata.xml [error] not found: https://packages.confluent.io/maven/com/streese/registravka4s/registravka4s-core_2.13/maven-metadata.xml [error] coursier.error.ResolutionError$CantDownloadModule: Error downloading com.streese.registravka4s:registravka4s-core_2.13:latest.release [error] No latest release version found in file:/home/max/.ivy2/local/com.streese.registravka4s/registravka4s-core_2.13/ [error] not found: https://repo1.maven.org/maven2/com/streese/registravka4s/registravka4s-core_2.13/maven-metadata.xml [error] not found: https://packages.confluent.io/maven/com/streese/registravka4s/registravka4s-core_2.13/maven-metadata.xml [error] at coursier.Resolve$.$anonfun$validate$1(Resolve.scala:323) [error] at scala.collection.immutable.List.map(List.scala:246) [error] at scala.collection.immutable.List.map(List.scala:79) [error] at coursier.Resolve$.validate(Resolve.scala:321) [error] at coursier.Resolve.validate0$1(Resolve.scala:115) [error] at coursier.Resolve.$anonfun$ioWithConflicts0$4(Resolve.scala:161) [error] at coursier.util.Task$.$anonfun$flatMap$extension$1(Task.scala:14) [error] at coursier.util.Task$.$anonfun$flatMap$extension$1$adapted(Task.scala:14) [error] at coursier.util.Task$.wrap(Task.scala:84) [error] at coursier.util.Task$.$anonfun$flatMap$2(Task.scala:14) [error] at scala.concurrent.impl.Promise$Transformation.run(Promise.scala:434) [error] at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [error] at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [error] at java.base/java.lang.Thread.run(Thread.java:834)
However when I run the code with the other module (avro4s) then everything works as expected.
What I cannot wrap my head around is the error description which states that the file https://repo1.maven.org/maven2/com/streese/registravka4s/registravka4s-core_2.13/maven-metadata.xml does not exist but it actually does. And what is more is it looks equivalent to https://repo1.maven.org/maven2/com/sksamuel/avro4s/avro4s-core_2.13/maven-metadata.xml, as does the whole directory structure. So I do not get how registravka4s is different from avro4s here in such a way that for one the code fails and for the other it does not.
I am getting this error when trying to do
sbt compile on a project
coursier.ResolutionException: Exception during resolution [error] Caused by: java.io.FileNotFoundException: <path to artifactory>/artifactory/typesafe-ivy-releases/org.junit.vintage/junit-vintage-engine/5.7.0/ivys/ivy.xml.sha1.lock (No such file or directory)
I am using
sbt 1.3.13. I have checked and the dependency is present in the remote artifactory. The
repostories configuration is proper. I am confused because I don't see an attempt to try to resolve this from the remote repository as it is not present in cache. What am I missing?
If I get
Exception in thread "main" coursier.cache.ArtifactError$DownloadError: download error: Caught java.net.MalformedURLException: unknown protocol: zip+https (unknown protocol: zip+https) while downloading zip+https://github.com/sbt/sbt/releases/download/v1.4.6/sbt-1.4.6.zip!sbt/bin/sbtn-x86_64-pc-linux
coursier install sbtn - where should I look for issues? old coursier version? jdk issue?
$(dirname $(readlink -f "$0"))solves this issue
--progresssupposed to completely hide any progress at all?
cs fetch org.scala-sbt::zinc_2.12:1.4.4 Exception in thread "main" coursier.install.AppArtifacts$ScalaDependenciesNotFound: Can't find a scala version suffix for org.scala-sbt::zinc_2.12:1.4.4
I'm getting this exception when I'm trying
COURSIER_REPOSITORIES="https://mycompany.com/nexus/content/groups/public" COURSIER_CACHE=/tmp/yo/ coursier fetch scalafmt Exception in thread "main" coursier.install.AppArtifacts$ScalaDependenciesNotFound: Can't find a scala version suffix for org.scalameta::scalafmt-cli:latest.release (likely a non existing module or version)
coursier fetchwith a private repository. Anyone has any idea what might be going on?
mirrors.propertiesto point central.to correctly my local maven proxy. On top of that, I'm passing
-r https://maven.company.com/nexus/content/groups/public --no-defaultto coursier. Even then... it's trying to connect to
repo1.maven.org. I don't understand why.
coursier/cache-action, we're seeing warnings like
reserveCache failed. Is it OK? Or is something going wrong? /cc @mijicd
path/to/bootstrap!coursier/bootstrap/launcher/jars/___.jarinstead of the typical
Hi, I'm trying to use a local maven repo. When I do
coursier fetch scalafmt it fails with
Caused by: coursier.install.AppArtifacts$ScalaDependenciesNotFound: Can't find a scala version suffix for org.scalameta::scalafmt-cli:latest.release (likely a non existing module or version)
However when I write the exact version number (after consulting the internet on whatever the latest version, couriser succeeds):
[siddhant@localhost ~] coursier fetch org.scalameta:scalafmt-cli_2.13:2.7.5
Does anyone have ideas as to what might be going on or how do I debug this?
coursier fetch org.scalameta::scalafmt-cli:2.7.5but that doesn't work either (notice the
brew install coursier/formulas/coursierand
brew tap coursier/formulas. Each time, I get these errors:
Error: Invalid formula: /usr/local/Homebrew/Library/Taps/coursier/homebrew-formulas/coursier.rb coursier: Unsupported special dependency :java Error: Cannot tap coursier/formulas: invalid syntax in tap!
Does coursier need special treatment to update GraalVM to 21.0.0 ? If so, is it tracked somewhere?
Coursier uses a JSON file with an index of JVMs from Jabba project. Version 21.0 of GraalVM was only recently added there. For some reason Coursier doesn't pick this up automatically, but if you pass an additional option, the new GraalVM can be used. The option is
sbt test:coursierDependencyTreebut it is not working the same for