redhat-developer / redhat-developer/vscode-java
argfile path incorrectly passed to shell
还没有人认领这个 Issue。
- 主要语言
- TypeScript
- 星标
- 2.3k
- 派生
- 546
- 平均合并
- 20 小时 1 分钟
- 30 天内合并 PR
- 11
描述
Type: Bug
When running SpringBoot application the argfile is generated correctly but wrongly passed to shell so java fails saying the argfile in not found.
When I press Run on Spring Application:
Sun 19 Jan 2025 17:29:17 AEDT
/usr/bin/env /Library/Java/JavaVirtualMachines/amazon-corretto-21.jdk/Contents/Home/bin/java @/var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxjkaymno1ghwdpwvy9zj.argfile com.example.Application
example ❯ /usr/bin/env /Library/Java/JavaVirtualMachines/amazon-corretto-21.jdk/Contents/Home/bin/java @/var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxymno1ghwdpwvy9zj.ar
gfile com.example.Application
Error: could not open `/var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxymno1ghwdpwvy9zj.argfile'
The correct (existing) file is cp_6p5jtxjkaymno1ghwdpwvy9zj.argfile while what is passed to the command is cp_6p5jtxymno1ghwdpwvy9zj.argfile. As we can see some characters ('jka') is removed from the file name.
My work around was to create a symbolic link to from wrong file to the correct file and the am able to run/debug now.
-rw-r--r-- 1 ali staff 7.1K 19 Jan 17:23 /var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxjkaymno1ghwdpwvy9zj.argfile
lrwxr-xr-x 1 ali staff 85B 19 Jan 17:22 /var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxymno1ghwdpwvy9zj.argfile -> /var/folders/gj/169h7wq975b_6l3c0v687wz40000gn/T/cp_6p5jtxjkaymno1ghwdpwvy9zj.argfile
Extension version: 1.39.2025011708
VS Code version: Code 1.96.4 (Universal) (cd4ee3b1c348a13bafd8f9ad8060705f6d4b9cba, 2025-01-16T00:16:19.038Z)
OS version: Darwin arm64 24.1.0
Modes:
System Info
| Item | Value |
|---|---|
| CPUs | Apple M1 Pro (10 x 2400) |
| GPU Status | 2d_canvas: enabled canvas_oop_rasterization: enabled_on direct_rendering_display_compositor: disabled_off_ok gpu_compositing: enabled multiple_raster_threads: enabled_on opengl: enabled_on rasterization: enabled raw_draw: disabled_off_ok skia_graphite: disabled_off video_decode: enabled video_encode: enabled webgl: enabled webgl2: enabled webgpu: enabled webnn: disabled_off |
| Load (avg) | 2, 2, 2 |
| Memory (System) | 16.00GB (0.13GB free) |
| Process Argv | . |
| Screen Reader | no |
| VM | 0% |
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
在 macOS 上使用 Run on a Spring Application 重现该故障,并将生成的 argfile 路径与传递给 Java 的路径进行比较。跟踪 argfile 的生成和启动路径;完成标准是现有的 argfile 路径未经更改地传递,并且应用程序无需 workaround symlink 即可启动。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java, spring-boot, typescript, vscode
- 领域
- developer-experience, tooling
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100