我的代碼使用 Apache Commons Lang v.2 ( commons-lang)。如果我更新我的代碼以改用 v.3 ( commons-lang3),我是否應該擔心我的代碼可能會開始表現不同(當然,由于已修復的錯誤和可能的新錯誤導致的差異除外,這是正常的并且不算數) ?換句話說,可以lang3有同樣在lang(具有完全相同的簽名)但可能在兩個版本中返回不同結果的方法嗎?Apache 確實提到了向后不兼容,而且非常清楚,但我總是從它們破壞編譯的意義上理解這些不兼容,而不是從完全相同的方法可以返回不同結果的意義上。lang我問這個是因為據我所知,促使 Apache 將包從重命名為的某些向后不兼容性lang3是可能返回不同結果的方法。我認為這是一個錯誤的說法,對我來說這很重要,因為我總是很高興地替換我lang偶然發現的lang3所有s 并且我只檢查它是否仍然可以編譯,而且我真的認為我是對的,但現在,由于import那些說法,我被告知停止,我認為這是錯誤的,但我沒有任何信息可以用來反駁這些說法并被允許繼續。
Apache Commons Lang:“lang”和“lang3”之間的“不兼容性”
慕尼黑5688855
2023-03-17 15:21:03
