VSCode运行Java冒泡排序代码遇JSONArray类找不到错误求助
Java运行报错:NoClassDefFoundError: JSONArray
我在VSCode中运行以下Java代码,该代码用于读取指定JSON文件中的纸杯蛋糕名称,通过冒泡排序对名称数组进行排序并输出相关统计信息:
package com.sort; import org.json.simple.*; public class BubbleSort { private static int count = 0; public static void main(String[] args) { String fileName = "C:/Users/Sid/Desktop/code/cis055/cupcake/src/main/java/com/sort/cupcake_3906.json"; // read cupcake names JSONArray cupcakeArray = JSONFile.readArray(fileName); String[] cupcakeNameArray = nameArray(cupcakeArray); System.out.println(cupcakeNameArray); // print unsorted list System.out.println("----- Unsorted array -----"); print(cupcakeNameArray); // sort bubbleSort(cupcakeNameArray); // print sorted list System.out.println("----- Sorted array----- "); print(cupcakeNameArray); // print statistics System.out.println("----- Statistics -----"); System.out.printf("Size of array = %d\n", cupcakeNameArray.length); System.out.printf("Count = %d\n", count); } // print cupcake array public static void print(String[] cupcakeNameArray) { System.out.printf("Number\tName\n"); System.out.printf("------\t---------------\n"); for (int i = 0; i < cupcakeNameArray.length; i++) { System.out.printf("%04d\t%s\n", i, cupcakeNameArray[i]); } } // get array of cupcake names public static String[] nameArray(JSONArray cupcakeArray) { String[] arr = new String[cupcakeArray.size()]; // get names from json object for (int i = 0; i < cupcakeArray.size(); i++) { JSONObject o = (JSONObject) cupcakeArray.get(i); String name = (String) o.get("name"); arr[i] = name; } return arr; } // bubble sort array, O(n^2), unoptimized brute force solution public static void bubbleSort(String[] arr) { for (int i = 0; i < arr.length; i++) { for (int j = 0; j < arr.length; j++) { if (j + 1 < arr.length) { if (arr[j].compareTo(arr[j + 1]) > 0) { swap(arr, j, j + 1); } } // increase count count++; } } } // swap public static void swap(String[] arr, int a, int b) { String temp; temp = arr[a]; arr[a] = arr[b]; arr[b] = temp; } }
运行代码时持续收到以下错误:
Error: Unable to initialize main class com.sort.BubbleSort
Caused by: java.lang.NoClassDefFoundError: JSONArray
我已在pom.xml文件中添加了相应依赖,但仍无法找出问题所在,恳请帮助!
内容的提问来源于stack exchange,提问作者Sid P.
相关产品推荐
相关产品推荐

