Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/393.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/visual-studio-code/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
VisualStudio代码在哪里缓存自动完成的Java依赖项信息?_Java_Visual Studio Code_Intellisense - Fatal编程技术网

VisualStudio代码在哪里缓存自动完成的Java依赖项信息?

VisualStudio代码在哪里缓存自动完成的Java依赖项信息?,java,visual-studio-code,intellisense,Java,Visual Studio Code,Intellisense,我正在使用VS代码编写Java,并安装了各种Red Hat和Microsoft扩展 我有两个项目,A和B。我将项目A的快照(使用Gradle)发布到Nexus存储库。项目B(也使用Gradle)引用了该Nexus存储库中项目a的当前快照 如果我使用命令行发布项目A,然后编译项目B,那么一切都可以编译。但当我回到VisualStudio代码时,我添加到项目A中的新方法不会显示在Intellisense中。它们显示为错误 我觉得VS代码必须在某个地方缓存其依赖关系视图,如果我可以删除该缓存,它将被迫

我正在使用VS代码编写Java,并安装了各种Red Hat和Microsoft扩展

我有两个项目,A和B。我将项目A的快照(使用Gradle)发布到Nexus存储库。项目B(也使用Gradle)引用了该Nexus存储库中项目a的当前快照

如果我使用命令行发布项目A,然后编译项目B,那么一切都可以编译。但当我回到VisualStudio代码时,我添加到项目A中的新方法不会显示在Intellisense中。它们显示为错误

我觉得VS代码必须在某个地方缓存其依赖关系视图,如果我可以删除该缓存,它将被迫重新扫描依赖关系。但是缓存在哪里?或者有没有其他方法强制VS代码更新其Intellisense?(退出VS代码并重新启动不起作用。)


我尝试在
C:\Users\[myusername]\AppData\Roaming\code
中清除
Cache
CachedData
的内容,但没有任何帮助。

我认为Java语言服务器会在Maven和Gradle缓存~/.m2和~/.Gradle中查找您在Java.externalDependencies中指定的依赖项


有一个命令可以自动刷新Java自动完成信息:

java.clean.workspace

您可以使用键盘快捷键将其绑定到一些值得记忆的键。(警告:之后刷新工作区需要一段时间。)

如果出于某种原因需要手动执行此操作:

在这个文件夹中

%USERPROFILE%\AppData\Roaming\code\User\workspaceStorage

…VS代码为您的项目创建了许多带有缓存信息的小型数据库。那里的文件夹都有GUID名称,但每个文件夹根目录中的
workspace.json
文件显示了它所属的项目,如下所示:

{
  "folder": "file:///c%3A/path/to/my/folderforthisproject"
}

我删除了整个
workspaceStorage
文件夹,但很明显,只删除我的项目的文件夹就足够了。

此外,为了让扩展解决您的第三方依赖关系,您需要使用构建工具,如maven或gradle。我们使用这些工具来获取您的外部依赖项,并提供关于它们的信息,而您的intellisense将仅限于单个文件和标准java库。请参考:唯一没有出现的是全新的方法。这些库中的旧方法也存在。Intellisense工作正常,但在我更新了库并重建了主项目后,它并没有保持最新状态。