【发布时间】:2021-11-22 17:17:33
【问题描述】:
我有一个项目,我需要为一项任务进行修改,并在 .jar 文件的帮助下运行一个终端。我可以在像 Eclipse 这样的 IDE 上运行相同的代码,但不能在 VSC 上运行。 这是得到的错误: 这个项目的jar文件是:
text-io-3.4.0.jar、slf4j-api-2.0.0-alpha5.jar 和 slf4j-nop-2.0.0-alpha5.jar
Exception in thread "main" java.lang.NoClassDefFoundError: jline/console/ConsoleReader
at org.beryx.textio.jline.JLineTextTerminalProvider.getTextTerminal(JLineTextTerminalProvider.java:28)
at org.beryx.textio.TextIoFactory$Holder.getDefaultTerminal(TextIoFactory.java:95)
at org.beryx.textio.TextIoFactory$Holder.<init>(TextIoFactory.java:65)
at org.beryx.textio.TextIoFactory$Holder.<clinit>(TextIoFactory.java:54)
at org.beryx.textio.TextIoFactory.getTextIO(TextIoFactory.java:111)
at ch.zhaw.catan.Catan.run(Catan.java:19)
at ch.zhaw.catan.Catan.main(Catan.java:50)
Caused by: java.lang.ClassNotFoundException: jline.console.ConsoleReader
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
... 7 more
我认为这是关于配置的。库的路径在项目中设置。我没有看到错误,我的教授没有使用 VSC。 我能做些什么来解决这个问题?我需要提供更多数据吗?如果需要,我可以上传文件。
-编辑
这是 dummy.java 和 jar 文件的链接
https://github.com/dangdung87/test
至于导致错误的行:
private void run() {
TextIO textIO = TextIoFactory.getTextIO();
TextTerminal<?> textTerminal = textIO.getTextTerminal();
【问题讨论】:
-
您可以发布可以重现此错误的代码 sn-ps。