MAVEN(1)

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

πŸ’… MAVEN(1) β€” User Commands, but make it cute

okay so bestie, welcome to the MAVEN page πŸŽ€ this is one of those User Commands situations, and honestly? it's giving "tiny script, huge responsibility." she makes a link in /usr/share/maven-repo for a jar that already exists. that's the whole vibe. let's get into it 🫢


✨ NAME ✨

Maven β€” Creates a link in /usr/share/maven-repo for an existing jar. periodt. that's her whole job and she does it flawlessly πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

mh_linkjar [option]... [pom] [dest_jar] [link]...

look at her. little command, big dreams ✨


🌸 DESCRIPTION 🌸

so what we're doing here is creating symlinks for a jar that got installed by other means. the symlinks she makes include links to the jar inside /usr/share/maven-repo, and she puts them at the correct location for Maven, no cap. she can also create extra links to the jar, which are usually chillin' over in /usr/share/java πŸ’–

Where:

  • [pom] β€” this is the location of the POM that's associated with the jar you're installing. and listen: the GroupId, artifactId and version get extracted from this file. she reads it. she knows. πŸ‘‘
  • [dest_jar] β€” the path of the installed jar, which is usually located in the usr/share/java folder. (yes bestie, that's exactly how it's written in the original, i'm not touching it πŸ™ˆ)
  • [link] β€” an extra link to the jar you're installing. usually there should be a link to usr/share/java/$jar.jar and usr/share/java/$jar-$version.jar so you comply with the Java packaging guidelines πŸ“¦βœ¨ and heads up: there is no need to specify those particular links if you use the --java-lib option. she'll handle it. she's got you.

πŸ’– OPTIONS πŸ’–

  • -h, --help β€” show this text πŸ₯° (yes, the text you are literally reading the vibe of right now)
  • -V, --version β€” show the version, so you know which queen you're talking to πŸ‘‘
  • -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. do not use the version declared in the POM file β€” like, she's overriding it, on purpose, respectfully πŸ’€
  • -r<rules>, --rules=<rules> β€” path to the file containing the rules to apply when cleaning the POM. it's optional, and 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 you give her this, she'll install the jar into /usr/share/java to comply with the Debian Java specification. the jar gets 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 🚫
  • -c<classifier>, --classifier=<classifier> β€” optional, the classifier for the jar. empty by default 🫧
  • -v, --verbose β€” show more information while running. she gets chatty. it's cute πŸ—£οΈπŸ’¬
  • -n, --no-act β€” don't actually do anything, just print the results πŸ‘€ (and yes bestie, the original page really does use -n twice β€” once for --usj-name and once for --no-act. i'm just the messenger πŸ™ˆ iykyk)
  • --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 🧼❌

⚠️ reminder bestie: -e / --set-version means you are not using the version from the POM, and --skip-clean-pom means you're trusting that mh_cleanpom already ran correctly. know what you're asking for πŸ’…

and that's the whole page, fr fr 🫢 this was Maven Repo Helper version 1.7.1, from September 2025 β€” iconic behavior, no notes, ate and left absolutely zero crumbs πŸ‘‘βœ¨ bye bestie, go make some symlinks πŸ’–

πŸ“¦ where this page comes from