我正在使用需要 JPA(javax.persistence.*
类)的项目测试 Java 9。当我添加module-info.java
并声明我的模块时,javax.persistece
包下的所有类都变得不可用。
我进行了很多搜索,但在 Java 9 模块项目中找不到需要使用 JPA 的模块。
更新 正如艾伦建议的那样,我跑了
$ jar --describe-module --file=javax.persistence-api-2.2.jar
No module descriptor found. Derived automatic module.
java.persistence@2.2 automatic
requires java.base mandated
contains javax.persistence
contains javax.persistence.criteria
contains javax.persistence.metamodel
contains javax.persistence.spi
但还是有了这个module-info.java
module my.module {
requires java.persistence;
}
我得到“module-info.java:[3,18] module not found:java.persistence”。
更新 2 这是我的项目结构:
.
├── pom.xml
└── src
├── main
│ ├── java
│ │ ├── my
│ │ │ └── module
│ │ │ └── MyBean.java
│ │ └── module-info.java
│ └── resources
└── test
├── java
└── resources
有依赖关系pom.xml
。javax.persistence-api