哪些更改或代码演变破坏了向后兼容性(主要是二进制兼容性)?它在任何地方都完全指定了吗?
我检查了Scala 语言规范,但没有看到任何有关此事的部分,例如Java Language Specification Ch。13 二进制兼容性。
哪些更改或代码演变破坏了向后兼容性(主要是二进制兼容性)?它在任何地方都完全指定了吗?
我检查了Scala 语言规范,但没有看到任何有关此事的部分,例如Java Language Specification Ch。13 二进制兼容性。
根据邮件列表,详细说明向后兼容性问题的规范文档尚不存在,但正在制定中。
有关二进制兼容性(主要是 scala 库)的当前状态和前景,请参阅Martin给 scala-user 邮件列表的消息。
有关迁移管理器预览,请参阅此页面http://typesafe.com/technology/migration-manager。
我在japi-compliance-checker工具(1.6版本)中添加了对 Scala 的支持。因此,现在您可以自动识别代码中的重大更改。该工具可在此处获得:https ://github.com/lvc/japi-compliance-checker
示例用法:
japi-compliance-checker OLD.jar NEW.jar
此外,我还创建了一个页面,其中包含由该工具生成的 Scala 版本演变分析报告作为示例:http ://abi-laboratory.pro/java/tracker/timeline/scala/