I have been using Clojure, ClojureScript, lein, shadow-cljs, re-frame, reagent, Emacs, and CIDER to work on a Clojure/ClojureScript dynamic web app project.
Now, I am trying to make depencies be private Maven packages hosted for free on GitHub packages. Ok, I managed to publish a package!
After the successful attempt to publish my first maven package, it
ended up with the name of repository-name.repository-name
which looks ugly. As I was trying to tweak it, I ended up changing
this line on my project.clj
file:
:pom-addition [:distribution-management [:repository [:id "github"]
[:name "GitHub Packages"]
[:url "https://maven.pkg.github.com/organization-name/repository-name"]]])
Instead of [:url "https://maven.pkg.github.com/organization-name/repository-name"]
I
tweaked it to be [:url "https://maven.pkg.github.com/organization-name"]
.
Now, things got really weird in my opinion.
After executing the terminal command to publish it:
➜ mvn deploy -DaltReleaseDeploymentRepository="${REPO}" -DaltSnapshotDeploymentRepository="${REPO}"
The terminal throws:
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 20.563 s
[INFO] Finished at: 2022-10-28T12:33:16-03:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy (default-deploy) on project project-name: Failed to retrieve remote metadata project-name:project-name/maven-metadata.xml: Could not transfer metadata project-name:project-name/maven-metadata.xml from/to github (https://maven.pkg.github.com/organization-name): transfer failed for https://maven.pkg.github.com/organization-name/project-name/project-name/maven-metadata.xml, status: 422 Unprocessable Entity -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
Now, when I go to https://github.com/orgs/my-organization/packages, the package was indeed published!
And with the name of repository-name
instead of repository-name.repository-name
.
Why is that so? If the build failed, why is the packaged being published?
Also, what would be standard name for Maven packages on GitHub packages (especially considering these are Maven packages for a Clojure project)?