我对javax.persistence、javax.persistence-api和javaee的区别和内容感到困惑。javaee可能包含更多内容,但我只对JPA内容感兴趣(如果存在于javaee中)。在抽象的角度上,有JPA作为规范,也有一些JPA的实现,比如eclipselink。因此,如果一个配置中有两个依赖项,那么很容易理解:一个用于规范内容,另一个用于实现。但这似乎有点复杂,所以我有以下几个问题:
我很高兴得到任何澄清。
发布于 2019-03-14 20:57:58
API依赖项用于compile项目。实现可以是运行时的provided (例如Java应用服务器),也可以是构建包含实现的应用程序。如果您不熟悉maven作用域,我建议您阅读这。
javax.persistence-api不包括实现。编辑:我想您可以在JPA2.2运行时中运行JPA2.1应用程序。然而,向后兼容性也意味着没有行为差异。新版本有更多的功能,默认情况下可能启用这些功能。毕竟,Java完全是关于“约定而不是配置”。因此,它也取决于您对“向后兼容性”的定义。
https://stackoverflow.com/questions/55169368
复制相似问题