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

Maven管理的JavaFX项目中org.json依赖无法访问问题求助

解决Maven JavaFX项目中org.json依赖问题的方案

1. 修正org.json依赖坐标

你遇到的「Missing Artifact」问题,大概率是误用了bundle classifier。Maven中央仓库中org.json的官方构件是普通jar包,而非bundle类型。替换为以下正确依赖:

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20220924</version>
</dependency>

执行mvn clean install -U强制更新依赖缓存。

2. 排查Maven仓库配置

如果修正坐标后仍无法拉取,检查你的Maven settings.xml是否配置了屏蔽中央仓库的镜像。可以临时在pom.xml中添加中央仓库配置:

<repositories>
    <repository>
        <id>central</id>
        <url>https://repo1.maven.org/maven2/</url>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>

再次执行mvn clean install -U拉取依赖。

3. 处理Java模块系统访问限制

JavaFX项目默认启用Java 9+模块系统,未模块化的org.json jar需要在module-info.java中声明依赖:

module your.module.name {
    // 替换为你的实际模块名
    requires org.json;
}

若项目未使用module-info.java,可在IDE项目设置中关闭模块系统,或在运行/编译VM参数中添加--add-modules org.json。

4. 备选:替换为兼容性更好的JSON库

如果org.json的问题难以解决,推荐换用对Maven和模块系统支持更完善的库:

  • Gson:
<dependency>
    <groupId>com.google.code.gson</groupId>
    <artifactId>gson</artifactId>
    <version>2.10.1</version>
</dependency>
  • Jackson:
<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-databind</artifactId>
    <version>2.15.2</version>
</dependency>

5. 本地jar导入的正确配置

若坚持使用本地下载的json-java.jar,修正system依赖的路径配置:

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20220924</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/libs/json-java.jar</systemPath>
</dependency>

确保jar文件路径正确,同时在IDE中右键libs目录选择「Add as Library」,让IDE识别该依赖。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 23:10:28