context.storagePath 为空(meta.json 除外)但缓存数据在调试时仍然可用 [REMOTE SSH]
context.storagePath is empty (except meta.json) but cached data is still available while debugging [REMOTE SSH]
我在调试我的扩展程序时确实遇到了一个非常可怕的问题。由于我使用 workspaceState 来缓存信息,因此我试图弄清楚状态通常位于何处。
ExtensionContext.storagePath 结果进入了我期待的路径 /home/<user>/.vscode-server/data/User/workspaceStorage/a002010c26b7b33d865d62202553fe33/myname.myextension
这个文件夹只包含一个meta.json。 (没有其他隐藏文件或文件夹)
但奇怪的是,缓存的数据仍然可用。有什么其他地方可以找到的想法吗?
我已经删除了整个“.vscode-server”目录,但仍然从其他地方加载缓存数据!?
我自己发现的。
缓存的数据存储在我的本地机器上(不是远程连接的计算机)。
所以即使 ExtensionContext.storagePath 指的是远程上的本地路径。可能会出现缓存数据存储在本地的情况。
在我的例子中,它是一台 windows 机器,存储路径是:
C:\Users\<user>\AppData\Roaming\Code\User\workspaceStorage\a002010c26b7b33d865d62202553fe33
我想这也可能与其ExtensionKind
有关
我在调试我的扩展程序时确实遇到了一个非常可怕的问题。由于我使用 workspaceState 来缓存信息,因此我试图弄清楚状态通常位于何处。
ExtensionContext.storagePath 结果进入了我期待的路径 /home/<user>/.vscode-server/data/User/workspaceStorage/a002010c26b7b33d865d62202553fe33/myname.myextension
这个文件夹只包含一个meta.json。 (没有其他隐藏文件或文件夹)
但奇怪的是,缓存的数据仍然可用。有什么其他地方可以找到的想法吗?
我已经删除了整个“.vscode-server”目录,但仍然从其他地方加载缓存数据!?
我自己发现的。 缓存的数据存储在我的本地机器上(不是远程连接的计算机)。
所以即使 ExtensionContext.storagePath 指的是远程上的本地路径。可能会出现缓存数据存储在本地的情况。
在我的例子中,它是一台 windows 机器,存储路径是:
C:\Users\<user>\AppData\Roaming\Code\User\workspaceStorage\a002010c26b7b33d865d62202553fe33
我想这也可能与其ExtensionKind
有关