redhat-developer / redhat-developer/vscode-java

Windows 10 FileNotFound if %APPDATA% points to Network Share

オープン
#2,634 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

ls-error/crash
主要言語
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
  1. 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
  2. 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

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず ProjectsManager.createJavaProject のプロジェクト初期化パスと FileSystemResourceManager のスタックトレースエントリを確認し、その後、ローカルドライブとネットワーク共有で APPDATA を使って再現します。どちらの APPDATA 構成でも、FileNotFound エラーなしで Java プロジェクトを開ければ完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
java, vscode
領域
developer-experience, operating-systems
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。