redhat-developer / redhat-developer/vscode-java
Windows 10 FileNotFound if %APPDATA% points to Network Share
まだ誰も着手していません。
- 主要言語
- TypeScript
- スター
- 2.3k
- フォーク
- 546
- 平均マージ
- 20時間 1分
- マージ済み PR(30日)
- 11
説明
FileNotFound when %APPDATA% points to Network Share
Environment
- Windows 10
- JDK 17
- Visual Studio Code version: 1.70.1
- Java extension version: v1.9.0
Steps To Reproduce
- Set $env:APPDATA to point to network share, i.e.
\dem3788.company.net\CENXXXVOL001\Profiles\UserName\AppData\Code\User\workspaceStorage\993565304d52f777ea974b4a582d4774\redhat.java\jdt_ws.metadata.plugins\org.eclipse.core.resources.projects\jdt.ls-java-project.project - Open Folder containing java project
Current Result
!ENTRY org.eclipse.core.resources 4 1 2022-08-16 21:11:53.709
!MESSAGE Internal Error
!STACK 1
org.eclipse.core.internal.resources.ResourceException(/jdt.ls-java-project/.project)[368]: java.lang.Exception: File not found: \dem-3788.company.net\CEN***VOL001\Profiles,%USERNAME%\AppData\Code - Insiders\User\workspaceStorage\993565304d52f777ea974b4a582d4774\redhat.java\jdt_ws.metadata.plugins\org.eclipse.core.resources.projects\jdt.ls-java-project.project.
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
at org.eclipse.core.internal.resources.ResourceException.(ResourceException.java:38)
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:835)
at org.eclipse.core.internal.resources.File.getContents(File.java:277)
at org.eclipse.core.internal.localstore.FileSystemResourceManager.descriptionChanged(FileSystemResourceManager.java:382)
at org.eclipse.core.internal.localstore.FileSystemResourceManager.internalWrite(FileSystemResourceManager.java:652)
at org.eclipse.core.internal.resources.Project.writeDescription(Project.java:1421)
at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1313)
at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1336)
at org.eclipse.jdt.internal.core.JavaProject.setJavaCommand(JavaProject.java:3519)
at org.eclipse.jdt.internal.core.JavaProject.addToBuildSpec(JavaProject.java:526)
at org.eclipse.jdt.internal.core.JavaProject.configure(JavaProject.java:1131)
at org.eclipse.core.internal.resources.NatureManager$1.run(NatureManager.java:150)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
at org.eclipse.core.internal.resources.NatureManager.configureNature(NatureManager.java:166)
at org.eclipse.core.internal.resources.NatureManager.configureNatures(NatureManager.java:212)
at org.eclipse.core.internal.resources.Project.basicSetDescription(Project.java:111)
at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1309)
at org.eclipse.core.internal.resources.Project.setDescription(Project.java:1336)
at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager.createJavaProject(ProjectsManager.java:360)
at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager.createJavaProject(ProjectsManager.java:341)
at org.eclipse.jdt.ls.core.internal.managers.ProjectsManager.initializeProjects(ProjectsManager.java:106)
at org.eclipse.jdt.ls.core.internal.handlers.InitHandler$1.runInWorkspace(InitHandler.java:244)
at org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:43)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
Expected Result
if $env:APPDATA points to a Drive:\Folder vs network share (\network\folder) project opens without errors
Additional Informations
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず ProjectsManager.createJavaProject のプロジェクト初期化パスと FileSystemResourceManager のスタックトレースエントリを確認し、その後、ローカルドライブとネットワーク共有で APPDATA を使って再現します。どちらの APPDATA 構成でも、FileNotFound エラーなしで Java プロジェクトを開ければ完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- java, vscode
- 領域
- developer-experience, operating-systems
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100