redhat-developer / redhat-developer/vscode-java

Maven and Java Build Status Colliding

Open
#1,293 3 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Maven
Dominant language
TypeScript
Stars
2.3k
Forks
546
Avg merge
20h 1m
Merged PRs (30d)
11

Description

I'm not entirely sure when this started happening or if reporting this issue on the wrong Java extension, but I believe it has been at least a week or two, maybe longer. I use versions-maven-plugin from org.codehaus.mojo to automatically change my versions whenever I package my project. Up until recently, this has never been an issue.

The issue I'm experiencing is that I frequently (not always) run into an error while trying to package my project. What I believe is happening, is that vscode is automatically rebuilding as soon as it registers that the version has changed. The problem with this is I think is that Maven is still building, and they sometimes run into the issue of each messing with the same class file at the same time.

Example error:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-jar-plugin:2.4:jar (default-jar) on project osrs-core: Error assembling JAR: java.lang.reflect.InvocationTargetException: /Users/palidino/Desktop/BattleScape/server/osrs-core/target/classes/com/palidinodh/osrscore/model/item/ItemArray.class -> [Help 1]
2nd package attempt, no changes:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project osrs-core: Execution default-compile of goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile failed.: NullPointerException -> [Help 1]
3rd attempt:
No errors. Sometimes takes more attempts, sometimes less.

Environment
  • Operating System: MacOS Catalina
  • JDK version: 1.8.0_191-b12
  • Visual Studio Code version: 1.42.1
  • Java extension version: 0.57.0
Steps To Reproduce
  1. Use org.codehaus.mojo build-helper-maven-plugin and versions-maven-plugin in build plugins during package phase to update versions.
  2. When the versions get changed, the java build status server is activated while maven is still working.
  3. Sometimes get an error.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Maven package phase with build-helper-maven-plugin and versions-maven-plugin on the reported macOS, JDK, VS Code, and Java extension versions. Investigate the Java build status server activation after version changes while Maven is still running; the issue is done when repeated packaging no longer produces concurrent class-file errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, vscode
Domain
build-system, devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.