【问题标题】:json File path not found on a Linux server Java [duplicate]在Linux服务器Java上找不到json文件路径[重复]
【发布时间】:2020-06-14 17:24:54
【问题描述】:

我创建了一个 json 文件,我想在我的服务器上启动该软件,但可能我收到此错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject
    at me.discord.JSON.<init>(JSON.java:27)
    at me.discord.Main.main(Main.java:35)
Caused by: java.lang.ClassNotFoundException: org.json.JSONObject
    at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
    ... 2 more

我不知道如何在 Windows 上的 Linux 上获取文件

String decodedPath = "/root/";
String content;
File db = new File(decodedPath + "/Database.json");
JSONObject json;
public JSON(){
    try{
        content = new String(Files.readAllBytes(Paths.get(db.toURI())), "UTF-8");
    }catch (Exception e) {

    }
    onLoad();
    Main.jsonMan = this;
    json = new JSONObject(content);
}

【问题讨论】:

标签: java linux file


【解决方案1】:

似乎 JSON jar 不在类路径中。

尝试向您的项目添加以下依赖项,并确认它在部署后也可用。

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

【讨论】:

    【解决方案2】:

    您需要获取 JSON jar 文件。您可以从以下链接获取依赖项详细信息

    https://mvnrepository.com/artifact/org.json/json

    <!-- https://mvnrepository.com/artifact/org.json/json -->
    <dependency>
        <groupId>org.json</groupId>
        <artifactId>json</artifactId>
        <version>20200518</version>
    </dependency>
    
    

    如果你熟悉 maven,你可以通过使用上面的 dependency 标签更新 pom.xml 来解决依赖关系,否则从以下位置下载 jar 文件:

    https://mvnrepository.com/artifact/org.json/json/20180130

    下载 jar 文件后,将其保存在您选择的任何文件夹中,例如 /lib/json-20180130.jar

    然后执行以下命令编译并运行代码。

    export CLASSPATH=.:/usr/jar/json-20180130.jar
    
    //Sample.java is name of your file.
    javac Sample.java
    
    java -cp "/lib/json-20180130.jar" Sample
    

    【讨论】:

    • 仍然出现错误,我把依赖项导入
    • 你能分享你的代码和jars吗?我将在我的 Linux 机器上运行。请务必与 import 语句和任何其他相关信息共享整个 java 代码。
    • mega.nz/file/… Projekt 我卸载了一些你没有得到错误的东西,因为你有一个丢失的密钥
    猜你喜欢
    • 1970-01-01
    • 2013-01-06
    • 2019-04-02
    • 2017-03-07
    • 2017-01-10
    • 1970-01-01
    • 2018-07-21
    • 2012-09-17
    • 2020-03-25
    相关资源
    最近更新 更多