MAVEN(1)

πŸ“¦
version 1.12 Β· 3 versions
, in ubuntu resolute, ubuntu stonking

✨ MAVEN(1) ✨

okay bestie, we're doing the Maven Repo Helper page today and it's genuinely so useful, like it's giving "packaging jars for Debian" main character energy 🫢 the manual is called MAVEN(1), it lives in the User Commands section, and no cap, it's a whole vibe.


πŸ’– NAME πŸ’–

Maven β€” installs a jar into /usr/share/maven-repo.


🌸 SYNOPSIS 🌸

mh_installjar [option]... [pom] [jar] [link]...

πŸ¦‹ DESCRIPTION πŸ¦‹

So what it does is: it installs the jar file into /usr/share/maven-repo, at the exact correct location for Maven. The jar gets copied into the build directory. It can also create extra links to the jar, usually ones that live in /usr/share/java. Obsessed.

Where, exactly? Let me break it down for you:

  • [pom] is the location of the POM associated with the jar you want to install. The GroupId, artifactId and version get extracted from this file. (iykyk, this is the whole source of truth.)
  • [jar] is the path to the jar to install, usually located in the build folder.
  • [link] is an additional link to the jar to install. Usually there should be a link to usr/share/java/$jar.jar and usr/share/java/$jar-$version.jar to comply with the Java packaging guidelines. Note that there is no need to specify those particular links if the --java-lib option is used πŸ’…

πŸŽ€ OPTIONS πŸŽ€

  • -h, --help β€” show this text πŸ™ˆ
  • -V, --version β€” show the version ⭐
  • -p<package>, --package=<package> β€” name of the Debian package which will contain this jar file
  • -e<version>, --set-version=<version> β€” set the version for the jar, and do not use the version declared in the POM file
  • -r<rules>, --rules=<rules> β€” path to the file containing the rules to apply when cleaning the POM. Optional! The default location is debian/maven.rules. Maven rules are used here to extract the groupId, artifactId and version from the POM file πŸ”₯
  • -l, --java-lib β€” Optional. If given, it will install the jar into /usr/share/java to comply with the Debian Java specification. The jar will be installed as /usr/share/java/$name-$version.jar and a versionless link /usr/share/java/$name.jar will point to it, as well as the links installed in /usr/share/maven-repo ✨
  • -n<name>, --usj-name=<name> β€” Optional, the name to use when installing the library in /usr/share/java when --java-lib is used. Defaults to the artifact id found in the POM.
  • -j<version>, --usj-version=<version> β€” Optional, the version to use when installing the library in /usr/share/java when --java-lib is used. Defaults to the version found in the POM.
  • -s, --no-usj-versionless β€” Optional, don't install the versionless link in /usr/share/java. This flag is used only when the -l or --java-lib option is given.
  • -d<path>, --dest-jar=<path> β€” Optional, the destination for the real jar. The other places where the jar appears β€” in the repository or in the list of links β€” will be symlinks to this jar. Defaults to /usr/share/java/$name-$version.jar if --java-lib is used, otherwise the jar is installed in the versioned path in the Maven repository.
  • -c<classifier>, --classifier=<classifier> β€” Optional, the classifier for the jar. Empty by default.
  • -v, --verbose β€” show more information while running πŸ‘€
  • -n, --no-act β€” don't actually do anything, just print the results 🫢
  • --skip-clean-pom β€” don't clean the pom; assume that a previous action ran mh_cleanpom with the correct options. mh_cleanpom is run only to extract the groupId, artifactId and version of the jar.
πŸ’€ not me pointing out that -n shows up twice in this list β€” once as -n<name> / --usj-name=<name> and once as -n / --no-act. That is literally what the page says, I'm just the messenger bestie, no editing from me 🫢

🌈 SEE ALSO 🌈


and that's the whole page, periodt πŸ’… you're officially a jar-installing icon, slay πŸŒˆπŸ‘‘

this lil masterpiece is brought to you by Maven Repo Helper version 1.7.1, dated September 2025 β€” mwah, go install something pretty πŸŽ€πŸ’œ

πŸ“¦ where this page comes from