10
votes

Impossible d'inspecter les variables sur Eclipse

Je ne peux pas inspecter les variables sur Eclipse lors du débogage de l'application Java distante. Quelle pourrait être la raison.

édité: Je ne suis pas capable d'inspecter des variables. Le message affiché dans l'inspecteur mini fenêtre est ' nom de variable ne peut pas être résolu'. Je suis capable de voir le contenu lorsque je l'exécute localement avec le code de test.


5 commentaires

Dis nous en plus. Que se passe-t-il lorsque vous essayez d'inspecter la variable?


Quelle version d'Eclipse utilisez-vous?


J'utilise Eclipse v 3.10


Eh bien, je pense que ce que vous voulez dire est 3.1.0. Je recommanderais la commutation à la libération actuelle. Cela pourrait résoudre ce problème. Personnellement, j'utilise la version 3.4 et les travaux de débogage à distance comme un charme :)


Merci Marcin. Va essayer ça.


8 Réponses :


1
votes

Toutes les variables ou juste quelques-unes? Il pourrait y avoir plusieurs raisons pour cela:

  • Il n'y a pas d'informations de débogage disponibles pour cette classe. Vous ne verriez pas les variables non plus lors du débogage du même code localement.

  • Peut-être qu'il y a un bogue dans Eclipse. Avez-vous vérifié la console d'erreur?

  • Je ne sais pas si la version du VM fait une différence. Mais vous devriez essayer d'utiliser le même VM des deux côtés pour vous assurer.


3 commentaires

Si l'application Java expose les capacités de débogage à distance, il n'est pas nécessaire que la classe d'une classe de mettre en œuvre une interface Serializable .


Hey Aaron, le débogage à distance fonctionnera avec toutes les classes sérialisables ou non.


Fixé. N'était-ce pas une option pour dire à Java d'oublier les données de débogage dans les fichiers de classe? Je vérifie les documents mais je ne pouvais pas le trouver.



2
votes

Vérifiez que vous êtes connecté à l'application distante.

Si votre application a plusieurs threads, il se peut qu'aucun thread n'est sélectionné, dans ce cas, sélectionnez le fil que le débogueur s'arrête.

Si le débogueur n'a pas arrêté - définissez un point d'arrêt.


0 commentaires

8
votes

Soyez absolument certain que les classes déployées sur le serveur distant ont été compilées avec des informations de débogage.


0 commentaires

1
votes

Il y a deux vues par lesquelles vous pouvez voir des valeurs tout en débogage dans Eclipse. La première est la vue Expressions. Dans la vue Expressions, vous pouvez voir des valeurs pour les champs que vous indiquez que vous souhaitez "regarder". Deuxièmement, la vue "Valeurs". Dans la vue Valeurs, vous pouvez voir les valeurs des champs dans une méthode que vous entrez, si la classe a été compilée avec des jetons de débogage, ou les valeurs des arguments passés si la classe n'était pas compilée avec débogage.

Si vous voyez quelque chose comme « le nom de la variable ne peut pas être résolu ', il est possible que vous utilisiez la vue Expressions, pas la vue Valeurs.


1 commentaires

«Valeurs» ou les «variables»?



2
votes

Dans mon cas, je compilais le projet via Maven avec débogage = Faux pour le compilateur-plugin. C'était le problème!


0 commentaires

1
votes

J'ai récemment rencontré le même problème et j'ai vérifié que toutes les classes ont été compilées avec des informations de débogage et elles étaient.

J'ai trouvé que le problème est que la source locale était légèrement obsolète. La source du code que je faisais débogué n'avait pas changé entre les deux versions, mais le problème était toujours présent. Une fois que j'ai mis à jour de Subversion et reconstruit localement, le problème a été résolu.


1 commentaires

J'ai modifié la source lors du débogage et de l'enregistrer. À partir de la prochaine fois, je n'ai pas eu d'inspecter les valeurs. Reverser les modifications résolues le problème



0
votes

Il pourrait y avoir beaucoup de raisons possibles. Êtes-vous dans le «bon contexte»? Si votre débogueur est à un contexte ou à un cadre de pile et que vous essayez d'inspecter les variables qui ne sont pas dans cette portée, vous ne pourrez pas les inspecter.


0 commentaires

0
votes

J'ai eu ce problème après avoir commuté pour bâtir avec Maven. Pour contourner le problème, j'ai ajouté la balise à la balise compilerarguments dans le pom.xml. Recherchez la balise Maven Compiler-Plugin et le modifier ainsi, il ressemble à quelque chose comme ci-dessous, la nouvelle balise que vous souhaitez ajouter est la balise vide !!:

        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.3.2</version>
            <configuration>
                <compilerArguments>
                    <source>1.8</source>
                    <target>1.8</target>
                    <g></g>
                </compilerArguments> 
            </configuration>
        </plugin> 


0 commentaires