Debugando jar sem ter o código fonte no eclipse [RESOLVIDO]

8 respostas
MauNunes

Eu já fiz isso uma vevz mas não me lembro como.
Eu estou querendo debugar uma classe dentro do arquivo jar, porém não tem o fonte desse arquivo. Eu sei que é possível fazer isso, mas não lembro como. Alguém saberia me dizer?

8 Respostas

gomesrod

Olá,

Debugar sem o código-fonte não é possível, ele é necessário mesmo que seja obtido por descompilação do jar.

Teoricamente as tarefas de debug (colocar breakpoint, inspecionar variaveis, etc) podem ser feitas sem o código-fonte através do debugger remoto de linha de comando, mas não faria nenhum sentido uma vez que não dá para saber o que está acontecendo nem o que deve ser examinado.

O que recomendo no seu caso é descompilar as classes desejadas para obter o código-fonte (mas não sei se existe risco de ele não ser identico ao original)

starkiller

MauNunes:
Eu já fiz isso uma vevz mas não me lembro como.
Eu estou querendo debugar uma classe dentro do arquivo jar, porém não tem o fonte desse arquivo. Eu sei que é possível fazer isso, mas não lembro como. Alguém saberia me dizer?

Tu é ninja mesmo. Mas vamos lá, sem fonte é impossivel. O que vc pode fazer é o que nosso amigo acima falou, decompila os os .class, cria um novo projeto com esses codigos decompilados e debuga. Uma ferramenta boa para decompilação é o Cavaj, pode usar sem medo! Espero ter ajudado.

MauNunes

Não é necessário fazer a descompilaçáo dos .class munualmente para debugar, o próprio eclipse fazia a descompilação automaticamente quando entrava na classe. Porem não me lembro como era feito isso.
E quando me refiro a sem código fonte, estou me referindo ao .java.

starkiller

MauNunes:
Não é necessário fazer a descompilaçáo dos .class munualmente para debugar, o próprio eclipse fazia a descompilação automaticamente quando entrava na classe. Porem não me lembro como era feito isso.
E quando me refiro a sem código fonte, estou me referindo ao .java.

Ou seja, ele decompila o .class pra vc. E mesmo assim, pra se debugar esse jar, vc teria de reempacotar e roda-lo, e pra isso se faz necessário o codigo fonte ( .java ), para ser compilado em .class e refetir as mudanças de seu debug!

MauNunes

Eu disse que eu quero apenas debugar. Em nenhum momento disse que quero fazer alterações no código. Logo na irei precisar do .java. Quando conseguir fazer o debug, posto para todos aqui no fórum.

starkiller

Se vc está debugando é pq ta dando erro, se ta dando erro o mesmo deve ser corrigido e para ser corrigido vc deve alterar seu fonte para tal, logo…

MauNunes

Não quero arrumar nada, apenas quero ver como a coisa está funcionando internamente.

MauNunes

Segue o link de como fazer utilizando o JadClipse

Criado 18 de maio de 2011
Ultima resposta 19 de mai. de 2011
Respostas 8
Participantes 3