考虑到这一点,我们有一组要发布的 API,将来很可能会自下而上地重新设计,将版本控制留在包级别以实现向后兼容性,以便用户始终可以获得最新的发布而不用担心破坏他们的代码比发布不同的库版本更好,如果用户不坚持某个发布的版本,向后兼容性并不总是得到保证?
例如MyClass-LATEST.jar,里面有package MyClass.v1;
,以后会提供package MyClass.v2;
,同时保留MyClass.v1
在同一个库中 MyClass-LATEST.jar
反对发布 MyClass-vX.X-RELEASE.jar...
干杯
最佳答案
我不会将版本号放在 API 中。如果发布的版本不向后兼容,用户不需要升级。但是,如果您发布的版本是向后兼容的,例如错误修复版本,您将强制用户更改他们的包名称,而不仅仅是能够放入新的 jar。
构建工具(ant、maven、gradle 等)用于管理版本。您不需要在 API 包名称中这样做。
关于java - 将版本保留在 API 中有什么利弊?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21176740/