我在VScode中创建了一个maven项目,并将GSON添加到我的pom.xml中:
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.10.1</version>
</dependency>
我第一次使用Java 17和模块。
我已经添加了“需要gson;“到我的module-info.java,但它报告“gson无法解析为模块”Maven依赖项显示gson:2.10.1库,我看到它已下载到.m2/respository文件夹中。
我的module-info.java:
module mypackage {
// needed for JavaFX
requires javafx.controls;
requires javafx.fxml;
//requires javafx.swing;
requires transitive javafx.graphics;
// needed for HTTP
requires unirest.java;
// needed for JSON
requires gson;
requires java.sql;
// needed for JavaFX
opens mypackage to javafx.fxml;
exports mypackage;
}
显然,在我导入Gson、GsonBuilder等的类中,它失败了,并显示“类型com.google.gson.Gson不可访问”。
有办法吗?温柔点我不是程序员。
1条答案
按热度按时间sqxo8psd1#
Gson的模块名是
com.google.gson
(另请参阅README或Javadoc)。因此,您应该用途:但最有可能的是,你还必须将你的包打开给Gson,因为它使用反射来访问你的类的字段:
(Also对于最近的Gson版本,您不必再添加
requires java.sql
。)