Zipped sources are not respected
Mantenedores costumam responder em até 4 dias
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 38/100
- Tipo de issue
- Bug
- Clareza
- Razoavelmente clara
- Status de atividade
- Estagnada
- Stack de tecnologia
- java, vscode
- Domínio
- developer-experience, tooling
Direção de pesquisa
Comece reproduzindo o problema com os arquivos anexados settings.json e GhidraProject.zip, concentrando-se em java.project.referenceLibraries::sources e na navegação a partir de GhidraProject.java. Compare a assinatura descompilada com Docking-src.zip; considera-se concluído quando a navegação e o autocompletar usam os nomes dos parâmetros do arquivo de código-fonte.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
Zipped source files in java.project.referenceLibraries::sources are not being respected and instead, navigating to the source just gives you code decompiled by IntelliJ FernFlower. This messes up the autocomplete because the argument names will be generic things like arg0 while the source files in the zip file have properly named variables.
I am creating a module for Ghidra in VSCode using their skeleton project generation tool, which autopopulates a settings.json file with the relevant libraries and sources from your Ghidra installation path.
Environment
- Gradle 8.14.1 (
GRADLE_HOMEdefined) - Ghidra 11.4.2 (in
/opt/ghidra/ghidra_11.4.2_PUBLIC) - OpenJDK 23.0.2 (
JAVA_HOMEdefined) - Offline (see settings.json)
- Version: 1.50, 1.48 for Linux x64
Expected behaviour
- Right-clicking on a library function should show its definition as defined in the source file.
- Function autocomplete should show correct names for parameters
Actual behaviour
- Right-clicking on a library function takes you to a class decompiled with FernFlower
- Function autocomplete uses generic argument names like
arg0
Steps to reproduce
- Install Ghidra
- Use provided settings.json
- Open the attached project (it assumes Ghidra is in the above path)
- In
src/java/main/java/ghidraproject/GhidraProject.java:- Navigate to
GhidraProjectPlugin.MyProvider::createActions - Hover over line 108:
dockingTool.addLocalActionvoid docking.Tool.addLocalAction(ComponentProvider arg0, DockingActionIf arg1);
- Navigate to
- Compare with source:
- Extract
Docking-src.zipfrom/opt/ghidra/ghidra_11.4.2_PUBLIC/Framework/Docking/lib/Docking-src.zip - Go to
docking/Tool.javaand viewaddLocalAction@ line 157void docking.Tool.addLocalAction(ComponentProvider componentProvider, DockingActionIf action);
- Extract
- Linguagem predominante
- TypeScript
- Estrelas
- 2.3k
- Forks
- 547
- Merge médio
- 5h 36min
- PRs com merge (30d)
- 10
Preparar o ambiente
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 redhat-developer/vscode-java
-
bug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
redhat-developer/vscode-java#4511 ·
Mantenedores costumam responder em até 4 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
redhat-developer/vscode-java#4426 ·
Mantenedores costumam responder em até 4 dias
-
bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
redhat-developer/vscode-java#4506 · 6 comentários · 4 reações ·
Mantenedores costumam responder em até 4 dias
-
bug
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 45/100
redhat-developer/vscode-java#4505 · 5 comentários · 2 reações ·
Mantenedores costumam responder em até 4 dias
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 52/100
redhat-developer/vscode-java#4504 · 3 comentários · 1 reação ·
Mantenedores costumam responder em até 4 dias
Todas as issues de redhat-developer/vscode-java
Issues semelhantes
-
Add: Digi World (Romania) SDAbertacheck:passed streams:add
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 88/100
Fission-AI/OpenSpec#1986 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
nestjs/docs.nestjs.com#3554 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
publicodes/publicodes#868 ·
-
namespace operations
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 78/100
EclipseFdn/open-vsx.org#13488 ·
Mantenedores costumam responder em até 2 dias