Что ж, я пытаюсь следовать Oracle JSR и использовать в своем проекте только спецификации. Я использую JBOSS EAP 7 в качестве серверного приложения.
1) В моем проекте есть зависимость от спящего режима:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>${hibernate.core.version}</version>
</dependency>
Это правильный способ следовать спецификации (JSR)? Или я должен просто установить зависимость JPA без какой-либо зависимости от спящего режима и позволить jboss позаботиться об этом?
2) Другой пример: я использую CDI, и в моем проекте WELD используется как реализация CDI:
<dependency>
<groupId>org.jboss.weld</groupId>
<artifactId>weld-core-jsf</artifactId>
<version>2.3.3.Final</version>
</dependency>
Должен ли я заменить его зависимостью CDI-API и позволить jboss позаботиться о реализации?
Как правильно следовать JSR и отказаться от реализаций?
jpa
зависимость в вашем проекте и не нужно определятьhibernate
зависимость, если вы развертываете приложение вjboss as7
. Вот какjboss as7
обнаруживаетjpa
-JPA use is detected (e.g. persistence.xml or @PersistenceContext/Unit annotations) and injects Hibernate dependencies into the application deployment.
Дополнительные сведения можно найти здесь а> - person Rishikesh Darandale   schedule 06.10.2017jpa provider
реализацию и исключить обнаружение jpa (во время развертывания) в случаеjboss as7
. - person Rishikesh Darandale   schedule 06.10.2017