【问题标题】:Visual Studio Code fails to use a libraryVisual Studio Code 无法使用库
【发布时间】:2021-11-22 17:17:33
【问题描述】:

我有一个项目,我需要为一项任务进行修改,并在 .jar 文件的帮助下运行一个终端。我可以在像 Eclipse 这样的 IDE 上运行相同的代码,但不能在 VSC 上运行。 这是得到的错误: 这个项目的jar文件是:

text-io-3.4.0.jarslf4j-api-2.0.0-alpha5.jarslf4j-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。

标签: java visual-studio-code


【解决方案1】:

看来 textio 库需要 jline 库 (https://mvnrepository.com/artifact/jline/jline/2.14.6)。

下载jar并将其添加到项目的依赖项中。

我们在 catan 项目中遇到了同样的问题;)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    • 1970-01-01
    • 2021-01-14
    • 2020-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多