Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Maven builds are deterministic (so long as you don't have SNAPSHOT dependencies). The version resolution is insane but deterministic. You'll only break that determinism if you change the dependencies.

That's precisely because maven doesn't support version ranges. Maven artifacts are also immutable.

Maven also supports manual override when the insane resolution strategy fails that's the "dependencymanagement" section.



Lockfile builds are also deterministic. You only break that determinism if you change the lockfile.


You can use version range with a maven plugin

https://maven.apache.org/enforcer/enforcer-rules/versionRang...


I typically just add an <exclusion> for one of my top level dependency, so Maven picks from some other.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: