Variáveis ​​não exibidas durante a depuração no Eclipse


99

Estou executando o Eclipse Galileo para desenvolvedores.

Quando executo no modo de depuração, as variáveis ​​atuais e seus valores não aparecem na janela Variáveis . A janela permanece vazia quando eu passo pelo meu código após um ponto de interrupção.

Ontem à noite estava funcionando, então estou perplexo. Alguma razão para isso estar acontecendo e alguma dica sobre solução de problemas?


11
Basta fechar a janela Variável. E abra novamente.
Gaurav

Aconteceu comigo e eu apenas reiniciei o Eclipse e funcionou novamente.
Michal

Respostas:


124

Acabei tentando algo fácil redefinindo a perspectiva de depuração, que parecia funcionar:

Janela => Perspectiva => Redefinir Perspectiva ...

Obrigado pelos comentários.


1
Eu continuo enfrentando o mesmo problema e redefinir a perspectiva tem funcionado para mim. obrigado por postar isso.
stephenbayer

1
Na verdade, isso ou a etapa adicional de @tonyeva fez isso, mas não funcionou imediatamente (ou seja, na pilha atual), então pensei que o problema não foi embora. No entanto, quando o depurador parou em um lugar diferente, as variáveis ​​começaram a aparecer.
haridsv

1
Às vezes, você precisa clicar no encadeamento novamente para que o painel Variáveis ​​seja atualizado. No painel Debug, encontre o thread com (Suspenso) ao lado dele, expanda-o e clique no quadro da pilha superior.
Stephen Kidson

Obrigado! Isso ajudou a resolver meu problema com os valores vars! Eu uso o Eclipse NEON
user1697575

1
Trabalhou no Neon, ótima resposta!
resgatado em


18

Meu problema era que eu não conseguia ver os nomes das variáveis, mas apenas o valor. Depois de tentar um pouco, encontrei a solução: Clique na seta para baixo (na guia Variáveis ​​degub) -> Layout -> mostrar colunas

Funcionou!


1
thakns, também me ajudou com o eclipse de Marte. A seta para baixo está no canto superior direito da barra da guia Variáveis.
meses,

Isso também me ajudou no Eclipse Mars, embora reiniciar e remover a visualização não tenha ajudado em nada.
Dave

14

Redefinir a perspectiva não foi o suficiente para mim, eu tive que primeiro excluir a guia "Variáveis" e, em seguida, redefinir a perspectiva (o que restabeleceu a guia Variáveis ​​em um estado de funcionamento). Outra coisa não mencionada acima, que pode ajudar outras pessoas - quando a guia de variáveis ​​não está funcionando, o título da guia fica em itálico (o que quer que isso signifique). Quando está funcionando, ele volta para a fonte normal.


5

Eu reiniciei o Eclipse e funcionou novamente.


Eu também. Fechar e reabrir a janela "Variáveis" não funcionou, mas sair do Eclipse e reiniciar sim.
Mark Madej

Tive que fechar o projeto, reiniciar o eclipse, reabrir o projeto e então a janela Variáveis ​​começou a funcionar novamente. Super estranho.
Máx.

4

Windows -> showView -> variável

ou você pode redefinir a perspectiva

janelas -> preferências -> perspectiva -> restaurar padrões


3

tente um clique com o botão direito na variável e selecione inspecionar, então ela deve aparecer em uma janela pop-up


isso funciona para mim (em Neon) e é mais fácil e menos perturbador do que redefinir a perspectiva
Paul 'Sparrow Hawk' Biron


2

O que funcionou para mim é o seguinte: eu tinha uma visualização Variáveis ​​em branco para o quadro da pilha superior. Selecionei um frame de pilha inferior, depois selecionei novamente o de cima e a visualização Variáveis ​​se atualizou de alguma forma. Nota: Estou usando o Eclipse Mars, então esse bug parece ter retornado nesta versão (ou talvez seja um diferente, com os mesmos sintomas?).


1

No meu caso, a variável não apareceu porque nas configurações do depurador (no meu caso xdebug) mudei Max children / max data / max array depth para grandes valores ... Eu reiniciei a configuração e funcionou


1

Se você conseguir pular nos pontos de interrupção, não há problema em Reinicializar a perspectiva.

Na versão do Eclipse: Luna Service Release 2 (4.4.2) Build id: 20150219-0600 Notei que não apenas a Visualização Variável estava vazia, mas também os botões para navegar na execução (botões de funcionalidade F5, F6, F8) foram desabilitados. Nesse caso, vá para a Visualização de depuração, clique com o botão direito na linha com o símbolo de pausa amarelo e escolha uma opção como "Retomar". No próximo ponto de interrupção, a visualização variável será preenchida automaticamente e os botões de navegação de execução serão habilitados. Não posso explicar porque


1

Além disso: seu processo precisa ser suspenso para que o Eclipse mostre as variáveis. Se estiver em execução, o Eclipse não mostrará nenhuma variável.

Para suspender um tópico, selecione-o na visualização "depurar" e clique em "Suspender"


1

Não encontrei uma solução após tentar as respostas acima - Talvez isso seja muito específico para o meu caso - A solução foi garantir que a opção "Ignorar todos os pontos de interrupção" não esteja habilitada no Eclipse Run -> Ignorar todos os pontos de interrupção (ctl-alt-B) (alternancia)


0

Eu estava tendo esse problema porque o eclipse acha que o código que está sendo executado está comentado. Há um wrapper #ifndef e a condição é avaliada como falsa em parte do projeto. Infelizmente, o CDT não foi inteligente o suficiente (Helios ou Keppler) para perceber que nem sempre é falso e, ao percorrer essa parte do código, a janela de variáveis ​​não funciona. Ainda posso inspecionar valores de variáveis ​​individuais.



0

Usei o estilo de Fender acima, mas selecionei "Assistir" uma variável. Uma vez na guia Expressões, acabei de passar para a guia Variáveis ​​e Voila - variáveis ​​de volta aos negócios.


Isso não fornece uma resposta para a pergunta. Para criticar ou solicitar esclarecimentos de um autor, deixe um comentário abaixo de sua postagem - você sempre pode comentar suas próprias postagens e, assim que tiver reputação suficiente , poderá comentar em qualquer postagem.
Lal

A pergunta original era: algum motivo para isso estar acontecendo? As outras respostas, incluindo a resposta aceita, também não fornecem uma resposta para a pergunta, mas explicam como corrigir o problema. Minha resposta faz o mesmo: aqui está o que funciona no meu sistema. Mas tenho certeza de que você está apenas tentando me ajudar. Obrigado!
capacitor

Obrigado pela proibição, Lai. Você é um ato elegante.
capacitor

0

Nenhuma das soluções funcionou para mim. O que resolveu meu problema estava sob a seta suspensa na janela Variável. Na opção Layout, tive que escolher "Variables View Only" e então pude ver os valores das variáveis ​​novamente.

Este problema também aparece de repente do nada. Em um momento, Debug estava funcionando e no próximo não.


0

Eu também tenho este problema: EclipseNeon + Tomcat8 não mostra todas as variáveis ​​quando em modo de depuração. Tentei as sugestões acima sem sucesso. Em seguida, depurei o mesmo projeto da web com NetBeans8 + GlassFish4 e todas as variáveis ​​estão listadas com valores. Em seguida, depurei o mesmo projeto da web com NetBeans8 + Tomcat8 e nem todas as variáveis ​​estão listadas. Então instalei o GlassFish4 for EclipseNeon e, depurando o mesmo projeto da web, todas as variáveis ​​são listadas com valores. Então, o problema está no Tomcat8. Uma nota: execute o Eclipse como administrador para instalar o GlassFish4; com o NetBeans é mais fácil instalar outros servidores.


0

Meu problema era que eu usava o OpenMP , desabilitei o OpenMP e as variáveis ​​locais apareceram.


0

Redefinir a visualização e reabrir o Eclipse não me ajudou, mas funcionou para mim:

clique no botão de seta para baixo na janela Variáveis -> Layout -> Selecionar colunas -> Verifique as colunas que desejar.

Embora eu já tivesse marcado 'nome' e 'valor', desmarquei e selecionei-os novamente, cliquei em ' OK ' e a coluna apareceu.


0

No meu caso, acho que a causa potencial não foi Variables Viewinicializada corretamente. Variáveis ​​Ver init em branco A alternativa é inserir outro ponto de interrupção antes que o código correto precise alterar as variáveis. Após inserir o segundo ponto de interrupção (mencionado acima) adicionado, o eclipse atualizará a visualização e todas as coisas deverão estar normais novamente.


0

É possível que seu compilador Java esteja configurado para não preservar informações variáveis. Clique com o botão direito do mouse no projeto no Explorador de Projetos e selecione Propriedades> Compilador Java> Adicionar atributos de variáveis ​​aos arquivos de classe gerados (usados ​​pelo depurador) . Sem esta opção definida, você verá apenas os campos na visualização Variáveis, não as variáveis ​​locais.


0

Como acontece com todo software ruim, o tratamento para esse comportamento errado não existe. O que é bom para um não funciona para os outros.

Eu deixei o depurador parar em um ponto de frenagem uma vez, depois novamente na segunda vez e na terceira vez a besta mostrou a Visualização Variável com todos os dados nela.


0

Supondo que você tenha sua visualização de depuração exatamente como deseja e não queira redefini-la toda vez que esse bug aparecer, tente isto. Isso pressupõe que sua "Visualização de depuração" tenha as visualizações "Expressões" e "Variáveis" abertas.

Clique duas vezes na guia Expressões (a guia real com o texto, não a 'barra da janela'). Isso irá maximizá-lo. Repita para restaurá-lo ao tamanho / localização anterior. Isso deve redefinir tudo, exceto Expressões. Repita para a guia de variáveis ​​e isso irá reiniciar as expressões.

Isso funcionou para mim no Windows 10 com Eclipse:
Versão : 2018-09 (4.9.0)
ID de compilação : 20180917-1800
Java : jdk1.8.0_171


-1

Para mim, a solução do problema foi configurar o xdebug corretamente. Eu adicionei no php.ini estas linhas de código:

zend_extension = "C: \ xampp \ php \ ext \ php_xdebug.dll"

xdebug.remote_enable = 1

xdebug.show_local_vars = 1

A parte importante que estava faltando: xdebug.remote_enable = 1


Isso não tem nada a ver com Eclipse e java. Tem certeza de que está respondendo à pergunta que gostaria de responder?
Vasily Liaskovsky 01 de

-1

Se você estiver procurando por uma "visualização ao vivo do objeto com o qual está trabalhando", ao passar o mouse sobre ele e ver o nome, certifique-se de colocar um ponto de interrupção no método que está testando. Caso contrário, quando você passar o mouse, receberá apenas o nome do método.

De qualquer forma, espero que isso ajude alguém. Tentei todos os passos acima, que são ótimos! mas ainda não conseguia ver o objeto com o qual estava trabalhando ao vivo. Pode ser apenas um erro de novato.

Boa sorte!

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.