POM_CHANGE_DEP(7)
π POM_CHANGE_DEP π
okay bestie, gather round, because this one is literally the glow-up artist for your dependency list β¨ It's a pom_change_dep situation β meaning it changes a dependency in a Maven POM file or an Ivy module. Same energy, new artifact coordinates. Slay.
πΈ SYNOPSIS πΈ
%pom_change_dep [OPTIONS] SOURCE_ARTIFACT CHANGED_ARTIFACT
[POM-location]... [extra-XML]
%pom_change_dep [OPTIONS] SOURCE_ARTIFACT CHANGED_ARTIFACT
[Ivy-module-location]... [extra-XML]
β¨ OPTIONS β¨
-rβ recursive mode, bestie. That means the dependency you're changing also gets changed in all enabled submodules of the POM file(s) you gave it. Heads up though: this has no effect if the file isn't a Maven POM. Ivy modules, this one's not for you π-fβ the chill pill option. Normally it throws an error when one of the files you specified doesn't contain the given dependency, and-fsays "no, we're not doing that." No error thrown. Periodt.
π¦ DESCRIPTION π¦
These macros patch a specified POM or Ivy file, changing a dependency on the Maven artifact given by some artifact coordinates over to the artifact given by a second set of Maven coordinates. The artifact specification format is the same one %pom_add_dep uses β iykyk.
Here's the cute part: if a part of that second artifact specification is omitted or empty, the original value just... stays. Left unmodified, untouched, thriving πΈ
But if you supply the special value - for a given part? That part of the artifact specification gets deleted. Gone. Not me casually erasing a groupId π
Now, the POM location, because this matters:
- It can be a full path to the POM or Ivy file, or a path to the directory containing
pom.xmlorivy.xml. - If you don't give a POM location at all, then
pom.xmlorivy.xmlfrom the current working directory gets used. Convenient, honestly. - When both
pom.xmlandivy.xmlare present,pom.xmlis the one that gets processed. Ivy found dead in a ditch, I fear. - You can specify more file locations, and all of them get processed. Multi-tasking queen π
Extra XML is additional XML code that gets added into the <dependency> node. You can omit this parameter entirely, in which case no extra XML is appended. No notes.
π EXAMPLES π
pom_change_dep foo: com.example.foo: -
this call changes the groupId of all dependencies which have groupId foo to com.example.foo. Their artifactId, versions and other possible parts are left unmodified. They ate and left no crumbs π
π AUTHOR π
Written by Michael Simacek. (iconic behavior, truly)
π REPORTING BUGS π
Bugs should be reported through the Java Packages Tools issue tracker at Github:
https://github.com/fedora-java/javapackages/issues
fr fr if something's broken, tell them there. Don't suffer in silence, bestie π«Ά
π SEE ALSO π
pom_add_dep(7), pom_add_parent(7), pom_add_plugin(7), pom_disable_module(7), pom_remove_dep(7), pom_remove_parent(7), pom_remove_plugin(7), pom_set_parent(7), pom_xpath_inject(7), pom_xpath_remove(7), pom_xpath_replace(7), pom_xpath_set(7).
and that's the whole vibe, bestie β this page came straight out of JAVAPACKAGES, dated 2025-09-19, filed under POM_CHANGE_DEP(7) π go forth and change those deps β¨π¦
π¦ where this page comes from
- fedora 43: javapackages-common 6.4.1-4.fc43 Β· BSD-3-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms