Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Escape does not cancel a launch that uses command:SpecifyProgramArgs

Aberta
#1,450 2 comentários 0 reações 1 responsável Ver no GitHub

@testforstephen já está trabalhando nisso.

Desde 28/2/2024.

Avaliação

Esta issue ainda não foi avaliada.

Descrição

ai-triaged bug

When launching a Java program with ${command:SpecifyProgramArgs}, the popup says that I can press 'Escape' to cancel, but it runs anyway.

Environment
  • Operating System: Windows 11
  • JDK version: 17.0.4.1
  • Visual Studio Code version: 1.86.2
  • Java extension version: 1.28.1
  • Java Debugger extension version: 17.0.4.1
Steps To Reproduce
  1. Open the repo https://github.com/sbj42/vscode-specifyprogramargs
  2. Open Test.java and press F5.
  3. Pop-up appears with "Press 'Enter' to confirm your input or 'Escape' to cancel".
  4. Press Escape.
  5. Terminal appears and runs the test program with no arguments.

See repo above, but you only need these two files:

Test.java:

public class Test {
    public static void main(String[] args) {
        System.out.println("args: " + String.join(" ", args));
    }
}

.vscode/launch.json:

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "java",
            "name": "Launch with Arguments Prompt",
            "request": "launch",
            "mainClass": "",
            "args": "${command:SpecifyProgramArgs}"
        }
    ]
}

Verbose output log from "Language Support for Java": log.txt

Current Result

The debug session starts with no arguments.

Expected Result

The debug session should not start, because it was cancelled.

Additional Informations

The implementation of SpecifyProgramArgs is at extension.ts:185. When the user cancels, the function returns a string with a single space. That's indistinguishable from the user entering a space in the input.

I presume that throwing some sort of cancellation exception would be good here, for instance throw new Error('Launch cancelled'). It would be even better if the exception didn't display an error box, but I don't know enough about vscode extension command handlers to know if that's possible.

Alternatively you could just remove the "or 'Escape' to cancel" hint in the input popup.

Linguagem predominante
TypeScript
Estrelas
591
Forks
429
Merge médio
1d 3h
PRs com merge (30d)
19

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/vscode-java-debug

Todas as issues de microsoft/vscode-java-debug

Issues semelhantes

Mais issues de TypeScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.