redhat-developer / redhat-developer/vscode-java

Resources (application.properties) automatically deleted from bin folder shortly after generation in Gradle project

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

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

bug
主要言語
TypeScript
スター
2.3k
フォーク
546
平均マージ
20時間 1分
マージ済み PR(30日)
11

説明

Describe the bug
In a Gradle multi-module project environment, the application.properties file is correctly auto-generated/copied into the bin/main folder after a "Clean Java Language Server Workspace" command or project build. However, after approximately 5-10 seconds, the file is automatically deleted from the disk without any user interaction.
To Reproduce
Steps to reproduce the behavior:

  1. Open a Gradle multi-module project in VS Code.
  2. Run the command: Java: Clean Java Language Server Workspace.
  3. Open the file explorer and navigate to the output directory (e.g., project/bin/main).
  4. Observe that application.properties is generated.
  5. Wait for about 5 seconds.
  6. The file disappears from the folder automatically.
Image Image Image

Expected behavior
The language server should copy resources from src/main/resources to the output folder and ensure they persist there for the application to use during runtime and debugging.

Environment

  • Operating System: Windows 11
  • JDK version: 25
  • Visual Studio Code version: v1.104.0
  • Java extension version: v1.54.0

Additional Information

  • This issue occurs specifically in a Gradle setup where the Language Server (Eclipse JDT.LS) seems to have a conflict with the internal build/sync process.
  • Attempting to set a separate output folder (e.g., bin/main/) results in a "Cannot nest output folder" error.
  • The logs show a warning: WARNING: Reflective call to EquinoxBundle#getModuleClassLoader(boolean) detected.
  • A temporary workaround is manually running .\gradlew.bat processResources, but the file is eventually deleted again by the language server's background synchronization.

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

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

はじめの一歩

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

調査の方向性

Java を使用する Windows 11 の Gradle マルチモジュールプロジェクトで問題を再現します。Clean Java Language Server Workspace を実行し、その後、生成された bin/main の内容を .\gradlew.bat processResources と比較しながら language server のログを確認します。報告されている出力フォルダーと同期の挙動を出発点にしてください。バックグラウンド同期後も application.properties が出力フォルダーに残り、実行時およびデバッグ時に利用できれば完了です。

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

評価

技術スタック
java, typescript
領域
build-system, tooling
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
45/100

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

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