我有一个使用ejb和jpa的项目。构建文件如下:
apply plugin: 'java'
apply plugin:'application'
mainClassName = "com.example.Main"
project.buildDir = 'target'
version = '0.1'
jar{
destinationDir=project.buildDir
}
repositories {
mavenCentral()
}
dependencies {
compile 'org.glassfish:javax.ejb:3.0.1','org.eclipse.persistence:javax.persistence:2.0.0'
testCompile group: 'junit', name: 'junit', version: '4.+'
}
当我“gradle clean compileJava”项目时,我收到了这些错误:
/home/user/Dropbox/project/src/main/java/com/example/TestClient.java:6: error: package javax.persistence does not exist
import javax.persistence.NamedQuery;
^
/home/user/Dropbox/project/src/main/java/com/example/TestCounter.java:9: error: cannot find symbol
@Entity
^
symbol: class Entity
/home/user/Dropbox/project/src/main/java/com/example/TestCounter:10: error: cannot find symbol
@NamedQuery(name = "findclient", query = "SELECT c FROM TestCounter c")
^
但是,使用相同的依赖项集,我可以在maven中编译项目。依赖声明必定有问题。花了一些时间阅读gradle网站,他们得到了很多“bla bla”销售宣传,但在一些真实的东西上并没有多少例子。
答案 0 :(得分:0)
我一直试图让它工作,因此忘了将运行时的依赖项更改为Oli提到的编译。所以,如果有人遇到这个问题,我会留下这个问题。