tags:

views:

130

answers:

1

I am writing a POM file for a in-house jar artifact. The artifact depends on several other in-house artifacts which our team writes. When declaring the dependencies of the target, should I limit those dependencies to fixed release version or leave them to SNAPSHOT version. If too many other SNAPSHOT versions of depended modules, it creates uncertainties in testing, if I limit to fixed release version, I cannot leverage the bug fixes of the depended modules. Whats the practice out there?

Secondly, how do you name the snapshot version> 1.0.0-SNAPSHOT or 1.0-SNAPSHOT.

+2  A: 

As a rule you should avoid snapshots and use only stable releases unless your code relies on some feature (or bugfix) that has not yet made it into a release.

As for version numbering I prefer three digits, from end:
revision: changes when bugs are fixed
minor: changes when new features are added
major: changes when incompatible changes are made.
I believe this is the standard used by (at least some of) Apache Java libraries.

Jacek Szymański