Java-Debug is not always conforming the Debugger Adapter Protocol
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 35/100
Direção de pesquisa
Comece pelo caminho do protocolo através de JsonUtils.java, AbstractProtocolServer.java e ProtocolServer.java e, em seguida, reproduza solicitações com argumentos null e solicitações threads repetidas. Verifique a resposta DAP de threads e o tratamento de source para classes retornadas com URIs jdt://. Está concluído quando os argumentos null não causarem mais exceções, as respostas de threads incluírem threads e as classes que não pertencem ao projeto usarem sourceReference com a solicitação source.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
-
Commands that have
argumentsset tonullthrow an exception:jdtls: 08.03.2021, 23:12:44 Error parsing message: com.google.gson.JsonSyntaxException: Expected a com.google.gson.JsonObject but was com.google.gson.JsonNull Expected a com.google.gson.JsonObject but was com.google.gson.JsonNull com.google.gson.JsonSyntaxException: Expected a com.google.gson.JsonObject but was com.google.gson.JsonNull at com.google.gson.internal.bind.TypeAdapters$35$1.read(TypeAdapters.java:897) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$1.read(ReflectiveTypeAdapterFactory.java:131) at com.google.gson.internal.bind.ReflectiveTypeAdapterFactory$Adapter.read(ReflectiveTypeAdapterFactory.java:222) at com.google.gson.Gson.fromJson(Gson.java:932) at com.google.gson.Gson.fromJson(Gson.java:897) at com.google.gson.Gson.fromJson(Gson.java:846) at com.google.gson.Gson.fromJson(Gson.java:817) at com.microsoft.java.debug.core.protocol.JsonUtils.fromJson(JsonUtils.java:26) at com.microsoft.java.debug.core.protocol.AbstractProtocolServer.processData(AbstractProtocolServer.java:219) at com.microsoft.java.debug.core.protocol.AbstractProtocolServer.run(AbstractProtocolServer.java:98) at com.microsoft.java.debug.core.adapter.ProtocolServer.run(ProtocolServer.java:61) at com.microsoft.java.debug.plugin.internal.JavaDebugServer$2.run(JavaDebugServer.java:136) at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1130) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:630) at java.base/java.lang.Thread.run(Thread.java:832)However, commands that do not need arguments, e.g. (
configurationDone,threads) should be able to set arguments tonullas the Thread Request does not set any restrictions. See here. -
The response to
threadsrequest does not always contain thethreadskey.
Protocol:⟸ request/threads(8) :: {} ⟸ request/threads(9) :: {} ⟸ request/threads(10) :: {} ⟸ request/threads(11) :: {} ⟸ request/threads(12) :: {} ⟸ request/threads(13) :: {} ⟹ response/threads(8) :: None ⟹ response/threads(9) :: None ⟹ response/threads(10) :: None ⟹ response/threads(11) :: None ⟹ response/threads(12) :: None ⟹ response/threads(13) :: NoneSee here.
-
When stepping into classes that are not represented by a project file, Java-Debug returns a path with URI scheme
jdt://which then can be used to retrieve the class content using thejava/classFileContentsLSP request. Java-Debug should instead set the sourceReference value > 0 and the contents of the source must be retrieved through thesourcerequest (See https://github.com/microsoft/java-debug/issues/259#issuecomment-695097967).
This requires a special workaround in https://github.com/daveleroy/sublime_debugger/pull/106.
- Linguagem predominante
- Java
- Estrelas
- 409
- Forks
- 204
- Merge médio
- 1d 13h
- PRs com merge (30d)
- 4
Guia de contribuição
Nenhum guia de contribuição indexado para este repositório
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de microsoft/java-debug
-
ai-triaged bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
microsoft/java-debug#611 · 2 comentários ·
-
ai-triaged enhancement
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 35/100
microsoft/java-debug#608 · 3 comentários ·
-
ai-triaged question
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 30/100
microsoft/java-debug#597 · 1 comentário ·
-
ai-triaged bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 25/100
microsoft/java-debug#588 · 1 comentário ·
-
Is Hamcrest a dependency? Abertaai-triaged question
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 35/100
microsoft/java-debug#582 · 1 comentário ·
Todas as issues de microsoft/java-debug
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
elastic/gradle-plugins#157 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
cryptomator/hub#497 ·
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
johanhaleby/occurrent#1120 ·