redhat-developer / redhat-developer/vscode-java

Self referencing maven modules should not trigger an infinite loop in vscode

未关闭
#1,977 2 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

compile Maven
主要语言
TypeScript
星标
2.3k
派生
546
平均合并
20 小时 1 分钟
30 天内合并 PR
11

描述

Vscode enters an infinite loop while trying to compile a falsy module setup. It should instead break the build should break with an error stating that a module is self-referencing itself the same way the maven cli report it.

Environment
  • Operating System: OSX BIg Sur
  • JDK version: OpenJDK 11.0.8 2020-07-14
  • Visual Studio Code version: [Version: 1.56.2 Commit: 054a9295330880ed74ceaedda236253b4f39a335]
  • Java extension version:
Steps To Reproduce
  1. Create a parent maven project with packaging type pom - parent
  2. Create a submodule (module-1) project with the packaging type 'jar' in the previous parent project
  3. Add a dependency of module-1 in parent with the save version (${project.version})
  4. See the error: Vscode will enter an infinite loop trying to resolve the dependency

Sample project reproducing the error

test-self-ref.zip

Current Result

The build will never get past the 339/1000 as displayed in the console (infinite loop)

Screenshot 2021-06-10 at 10 40 39
Expected Result

Build should terminate with error as done bymaven when using the cli.

Screenshot 2021-06-10 at 11 02 07
Additional Informations

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

调研方向

首先将附加的 test-self-ref.zip 项目导入 Java 扩展,并将其行为与 Maven CLI 进行比较。跟踪负责在 339/1000 处停止的模块解析路径;当自引用设置以错误结束而不是无限循环时,即表示完成。

由索引模型根据 Issue 内容生成。

评估

技术栈
java, vscode
领域
build-system, devtools
Issue 类型
缺陷
难度
4/5
预计耗时
3-5 天
活跃度
停滞
描述清晰度
基本清楚
新手友好度
42/100

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。