You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaFX Maven项目无法导入Gson的问题求助

JavaFX Maven项目导入Gson提示“The type com.google.gson.Gson is not accessible”的解决方案

你的问题出在两个核心点:Maven依赖作用域配置错误和Java模块系统未声明依赖模块,这也是Spring项目能正常使用Gson的原因——Spring项目通常不强制启用Java模块系统,且依赖作用域默认配置正确。

问题1:Gson依赖的scope设置错误

你在pom.xml中将Gson依赖的scope设为provided,该作用域表示依赖由运行环境提供,但JavaFX项目的运行环境(JDK或javafx插件)并不会自带Gson,导致编译、运行时都无法找到该类。

修改方式:

移除Gson依赖的scope配置(默认即为compile作用域,会将依赖打包到项目中),修改后的依赖代码如下:

<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.8.5</version>
</dependency>

问题2:Java模块系统未声明依赖Gson模块

你的项目启用了Java 9+的模块系统(存在module-info.java),必须显式声明项目依赖的外部模块,否则编译器无法访问Gson的类。

修改方式:

在module-info.java中添加requires com.google.gson;声明,修改后的代码如下:

module ca.cmpt213.asn5 {
    requires transitive javafx.controls;
    requires com.google.gson;

    exports ca.cmpt213.asn5;
}

收尾操作

  1. 保存修改后的pom.xml和module-info.java
  2. 在VSCode中执行Maven的clean+compile命令,或点击Maven面板的刷新按钮重新加载依赖
  3. 重启VSCode(确保编辑器缓存更新)

完成以上步骤后,Gson的导入和使用即可恢复正常。

内容的提问来源于stack exchange,提问作者Gyro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.05 07:33:34