VS Code 无法识别 .class 文件中定义的类,但在终端中可以正常编译

问题描述 投票:0回答:1

我的一项作业的起始文件夹包括两个文件:

DoublyLinkedNode.class
DoublyLinkedList.class
,每个文件都有各自类的声明和实现。

我想在新的 .java 文件中创建一个扩展 DoublyLinkedList 的类

public class DoublyLinkedListWithDummy<E> extends DoublyLinkedList<E> {

}

但是 VS Code 会用

 标记 
DoublyLinkedList<E>

DoublyLinkedList cannot be resolved to a typeJava(16777218)

cannot find symbol
  symbol: class DoublyLinkedList(errors(1): 1:51-1:67)

DoublyLinkedListWithDummy.java
从终端手动完成编译甚至运行得很好,但由于上述错误而拒绝在 VS Code 中编译。


对于上下文,这是我的文件目录。所有文件都位于同一目录中,因此它们应该可以相互访问。显然是这样,因为在终端上它编译得很好。

enter image description here

这是我的类路径项目设置。据我所知,源路径设置正确。

enter image description here


这可能是什么原因造成的,如何让 VS Code 配合?

我尝试重置工作区、检查源路径、重新启动 VS Code、更新 Java 扩展包等,但这些都不起作用。

谢谢!

java visual-studio-code inheritance
1个回答
0
投票

您可以使用命令

Java: Clean Java Language Server Workspace
。如果它不起作用,您可以使用正确的路径在项目的根目录中添加一个
.classpath
文件:

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
  <classpathentry kind="src" path="src"/>
  <classpathentry kind="output" path="bin"/>
  <!-- Add any additional libraries if needed -->
</classpath>
© www.soinside.com 2019 - 2024. All rights reserved.