The official suggestion for Java package names is to use a reversed version of a domain name related to the project (preferably one that the project will be distributed on).
What happens if (for whatever reason) the project owners no longer own the domain name but still own the project? The domain and thus the right to the reverse-domain package name now belongs to someone else, so does this mean the package names have to be changed and if so, how?
For those who can't imagine a situation in which a group of programmers loose the domain name they were using for hosting, here are some examples of such situations:
- The owners may no longer be able to afford the domain and may have to switch to a cheaper domain or use a free domain/distribution service.
- They may be offered a lot of money for the domain by a company that
desperately wants it for whatever reason. - The project owners may be charged with domain squatting, whether the squatting was intentional or not.
I am aware that these are still unlikely circumstances, but they are possible and this question is intentionally hypothetical.