-1

当我给出以下命令时

java -Xmx500m -jar bc.jar %1 %2 %3 %4 %5 %6 %7 %8 %9

我收到以下异常

    Throwable Error: java.lang.NoClassDefFoundError: org/supercsv/prefs/CsvPreference
Exception in thread "main" java.lang.Error: java.lang.NoClassDefFoundError: org/supercsv/prefs/CsvPreference
        at bc.c.Util.process(Util.java:135)
        at bc.m.TabularReader$CSVReader.<init>(TabularReader.java:68)
        at bc.m.TabularReader.<init>(TabularReader.java:37)
        at bc.c.Spread2db.main(Spread2db.java:244)
Caused by: java.lang.NoClassDefFoundError: org/supercsv/prefs/CsvPreference
        at bc.m.TabularReader$CSVReader.<init>(TabularReader.java:64)
        ... 2 more
Caused by: java.lang.ClassNotFoundException: org.supercsv.prefs.CsvPreference
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 3 more

我猜这是由于不正确地包含了 supercsv。

有人可以帮我解决这个问题吗?

4

1 回答 1

0

听起来 Super CSV 不在类路径中,并且由于您没有提供类路径,因此-cp我会检查 jar 中的清单以查看它期望 super-csv jar 的位置(可能在同一目录中),然后确认它确实存在。

似乎是对运行 jar 时配置类路径的不同方式的一个很好的概述。

于 2014-06-25T13:07:15.383 回答