我正在使用gradle构建Java EE应用程序并尝试对实际实现保持不可知。我已经添加了JavaEE依赖项。
group 'com.test.application'
version '1.0'
apply plugin: 'war'
apply plugin: 'idea'
sourceCompatibility = 1.8
targetCompatibility = 1.8
repositories {
jcenter()
}
dependencies {
compileOnly 'javax:javaee-api:7.0'
compile 'org.slf4j:slf4j-simple:1.7.21'
testCompile 'junit:junit:4.11'
}
我如何指定实际的实现,以便将其部署到服务器? 我主要关心的是JAX-RS和JPA实现。
编辑:我想我想要了解的是为什么有人会使用' javax:javaee-api:7.0'既然它不是具体的实施?我觉得我错过了这一点。
答案 0 :(得分:0)
Java EE容器应该为JPA和JAX-RS提供实现。例如:
在依赖项管理器配置文件中,您不需要声明具体的实现依赖项。但是,如果您需要使用具体实现提供的任何类或接口,则应使用provided
范围声明此类依赖项。