redhat-developer / redhat-developer/quarkus-ls

CodeLens to run Quarkus application

Open
#249 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

codelens enhancement
Dominant language
Java
Stars
50
Forks
18
Avg merge
22h 11m
Merged PRs (30d)
3

Description

Future of Quarkus will support run of Quarkus application.

See https://github.com/quarkusio/quarkus/blob/8adf3ea90bcc1c6b92f9626e1200053fbd136e28/docs/src/main/asciidoc/command-mode-reference.adoc

It should be good to provide CodeLens ([Run | Debug]) to run the application

import io.quarkus.runtime.QuarkusApplication;
import io.quarkus.runtime.annotations.DefaultMain;

@DefaultMain    // (1)
public class HelloWorldMain implements QuarkusApplication {
  
  [Run | Debug]
  @Override
  public int run(String... args) throws Exception {   // (2)
    System.out.println("Hello World");
    return 10;
 }
}
import io.quarkus.runtime.Quarkus;
import io.quarkus.runtime.annotations.DefaultMain;

@DefaultMain
public class JavaMain {

    [Run | Debug]
    public static void main(String... args) {
        Quarkus.run(HelloWorldMain.class, args);
    }
}

It seems that it's possible to follow the lifecycle of a Quarkus Application with an IDE (see https://github.com/quarkusio/quarkus/blob/8adf3ea90bcc1c6b92f9626e1200053fbd136e28/docs/src/main/asciidoc/command-mode-reference.adoc#the-command-mode-lifecycle)

We could use this feature to refresh CodeLens

  • after Quarkus application is started (click on Run CodeLens), it should display [Stop]
  • after Quarkus application is stopped (click on Stop CodeLens), it should display [Run]

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 with the command-mode-reference.adoc lifecycle section linked in the issue, then trace the CodeLens entry points for the run(String... args) and main(String... args) examples. The work is done when applicable Quarkus methods show Run and Debug actions, refresh to Stop while running, and return to Run after stopping.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devtools, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.