如何避免 VS Code 警告:“[myfile].java 是非项目文件,仅报告语法错误”
How to avoid VS Code warning: "[myfile].java is a non-project file, only syntax errors are reported"
我是 运行 java 项目中 Visual Studio 代码中的构建任务。
“问题”选项卡中的警告:
[myfile].java is a non-project file, only syntax errors are reported
它指的是我在包含 main() 的 class 文件中加载的第一行:
package [the project folder];
import [the project folder].[the file with other classes].*;
- 我只能通过将文件的文本(代码文本本身)复制到新的不相关文件夹中的新项目的新 java 文件中来避免警告。代码本身是正确的并且编译没有错误。实际上,这就是答案,但是需要大量的手动工作。
- 当我刚刚将带有警告信息的项目的java个文件复制到一个新的文件夹中时,警告仍然出现!!!! (!)
- 当我只是将整个项目文件夹复制到一个新的地方时,当然错误仍然存在。
我猜将文本复制到具有相同名称和相同文件夹结构的新 java 文件与复制文件本身不同,因为文件可能被 VS Code 标记,因此它们有一个项目即使文件夹结构被破坏,也可以标记。也许这支持从恢复的原始文件中恢复项目结构?这可能是这个 Visual Code 警告的问题吗?
我之前查看过其他线程,这只是最后一步。
--> 因此,我清理了 vscode 的工作空间存储(在 Windows:C:\Users\USER\AppData\Roaming\Code\User\workspaceStorage
上)并重新启动但没有成功。
这是给那些不使用 Maven 的人的答案。
整个问题不是加载直接项目文件夹,而是加载父文件夹,尽管项目从一开始就是在它们的直接项目文件夹中开发的。
包含 FOLDER1(父级)
- FolderA(java 个文件的直接项目文件夹)
- FolderB(java 个文件的直接项目文件夹)
项目我是分开写的。但是有一次我在 VS Code 中打开了 FOLDER1。这似乎已将 2 个项目合并为一个项目。在此之后,我改回只打开 FolderA/B 并收到问题中报告的警告。
现在我再次打开了 FOLDER1 并在没有警告的情况下制作了两个 FolderA/B 项目 运行(也许您可能只是注释掉所有内容而不修复任何内容,但那是未经测试的),打开隔离的 FolderA/B 项目也没有发出警告。似乎 VS Code 使打开父文件夹成为干扰子项目的新项目的开始。
而我收到警告的原因是最后另一个项目文件夹中的代码错误(不重要,但我忘记在某些 java 文件).
无论我遇到什么错误,警告都令人困惑,因为我只处理与“FolderA”无关且没有代码问题的项目“FolderB”。这导致了奇怪的效果,我在我的“FolderB”项目中也收到了“FolderA”项目的警告,因为 VS Code 将两者视为一个项目。
我收到相同的警告只是因为我在同一个 vscode 工作区中有两个 Java (Maven) 项目。一旦我将 projectA 移出工作区,projectB 的警告就消失了。
WorkspaceRoot
│ projectA
└───projectB
我目前的解决方案是为一个工作区创建一个 Java (Maven) 项目,即
每个 vscode 工作区一个 Maven 项目。
我的猜测是 vscode 将同一工作区内的所有 Java 项目视为一个项目,因此,项目相互干扰。
对我来说,删除 C:\Users\yourHome\AppData\Roaming 路径中的代码文件夹即可解决问题。
尝试清理 Java 语言服务器工作区:
- CMD+SHIFT+P(CTRL+SHIFT+P ON WINDOWS)显示命令面板
- 选择“Java:清理 Java 语言服务器工作区”
- 重启并删除
刚刚为我工作。
我重命名了包含“[myfile].java 是一个非项目文件,仅报告语法错误”的包,它对我有用。
我为此纠结了很长时间,但在互联网上没有找到合适的解决方案。我以某种方式设法通过执行以下步骤来做到这一点:
以下是我执行的操作:
- 您在左窗格中看到了一些文件夹。 (或按 crt+shift+e 打开左窗格)。
- 右键单击它们,然后按“将文件夹添加到 Java 源
路径。"
解决方案中建议的那个并没有 100% 解决我的问题。此扩展出现问题“Red Hat 对 Java(TM) 的语言支持”,这让我们的文件夹远离源路径。
我在 Java 中使用了 VScode 编辑器 first-time,我用我的简单 HelloWorld 程序遇到了这个问题。
我尝试清理编辑器的工作区,但问题没有解决。
然后,我在 C:// 驱动器中创建了一个名为 mypractice 的文件夹,然后在 VSCode 工作区中添加了相同的文件夹,然后创建了一个 java 新创建的工作区中的文件。
当我 运行 该文件时,它没有任何警告或错误地工作。
我是 运行 java 项目中 Visual Studio 代码中的构建任务。 “问题”选项卡中的警告:
[myfile].java is a non-project file, only syntax errors are reported
它指的是我在包含 main() 的 class 文件中加载的第一行:
package [the project folder];
import [the project folder].[the file with other classes].*;
- 我只能通过将文件的文本(代码文本本身)复制到新的不相关文件夹中的新项目的新 java 文件中来避免警告。代码本身是正确的并且编译没有错误。实际上,这就是答案,但是需要大量的手动工作。
- 当我刚刚将带有警告信息的项目的java个文件复制到一个新的文件夹中时,警告仍然出现!!!! (!)
- 当我只是将整个项目文件夹复制到一个新的地方时,当然错误仍然存在。
我猜将文本复制到具有相同名称和相同文件夹结构的新 java 文件与复制文件本身不同,因为文件可能被 VS Code 标记,因此它们有一个项目即使文件夹结构被破坏,也可以标记。也许这支持从恢复的原始文件中恢复项目结构?这可能是这个 Visual Code 警告的问题吗?
我之前查看过其他线程,这只是最后一步。
--> 因此,我清理了 vscode 的工作空间存储(在 Windows:C:\Users\USER\AppData\Roaming\Code\User\workspaceStorage
上)并重新启动但没有成功。
这是给那些不使用 Maven 的人的答案。
整个问题不是加载直接项目文件夹,而是加载父文件夹,尽管项目从一开始就是在它们的直接项目文件夹中开发的。
包含 FOLDER1(父级)
- FolderA(java 个文件的直接项目文件夹)
- FolderB(java 个文件的直接项目文件夹)
项目我是分开写的。但是有一次我在 VS Code 中打开了 FOLDER1。这似乎已将 2 个项目合并为一个项目。在此之后,我改回只打开 FolderA/B 并收到问题中报告的警告。
现在我再次打开了 FOLDER1 并在没有警告的情况下制作了两个 FolderA/B 项目 运行(也许您可能只是注释掉所有内容而不修复任何内容,但那是未经测试的),打开隔离的 FolderA/B 项目也没有发出警告。似乎 VS Code 使打开父文件夹成为干扰子项目的新项目的开始。
而我收到警告的原因是最后另一个项目文件夹中的代码错误(不重要,但我忘记在某些 java 文件).
无论我遇到什么错误,警告都令人困惑,因为我只处理与“FolderA”无关且没有代码问题的项目“FolderB”。这导致了奇怪的效果,我在我的“FolderB”项目中也收到了“FolderA”项目的警告,因为 VS Code 将两者视为一个项目。
我收到相同的警告只是因为我在同一个 vscode 工作区中有两个 Java (Maven) 项目。一旦我将 projectA 移出工作区,projectB 的警告就消失了。
WorkspaceRoot
│ projectA
└───projectB
我目前的解决方案是为一个工作区创建一个 Java (Maven) 项目,即 每个 vscode 工作区一个 Maven 项目。
我的猜测是 vscode 将同一工作区内的所有 Java 项目视为一个项目,因此,项目相互干扰。
对我来说,删除 C:\Users\yourHome\AppData\Roaming 路径中的代码文件夹即可解决问题。
尝试清理 Java 语言服务器工作区:
- CMD+SHIFT+P(CTRL+SHIFT+P ON WINDOWS)显示命令面板
- 选择“Java:清理 Java 语言服务器工作区”
- 重启并删除
刚刚为我工作。
我重命名了包含“[myfile].java 是一个非项目文件,仅报告语法错误”的包,它对我有用。
我为此纠结了很长时间,但在互联网上没有找到合适的解决方案。我以某种方式设法通过执行以下步骤来做到这一点: 以下是我执行的操作:
- 您在左窗格中看到了一些文件夹。 (或按 crt+shift+e 打开左窗格)。
- 右键单击它们,然后按“将文件夹添加到 Java 源 路径。"
解决方案中建议的那个并没有 100% 解决我的问题。此扩展出现问题“Red Hat 对 Java(TM) 的语言支持”,这让我们的文件夹远离源路径。
我在 Java 中使用了 VScode 编辑器 first-time,我用我的简单 HelloWorld 程序遇到了这个问题。
我尝试清理编辑器的工作区,但问题没有解决。
然后,我在 C:// 驱动器中创建了一个名为 mypractice 的文件夹,然后在 VSCode 工作区中添加了相同的文件夹,然后创建了一个 java 新创建的工作区中的文件。
当我 运行 该文件时,它没有任何警告或错误地工作。