2014-02-11 39 views
1

很久以前,我在另一台计算机上写了一个旧应用程序。 这个不再存在 - 并且所有的源代码都不存在 - 但我仍然以jar文件的形式存在应用程序。如何附加到正在运行的jar并进行调试?

现在我需要检查我的旧代码,我在代码中的特定位置做了什么。我知道我可以从它创建一个Java - 但我需要检查它,而它正在运行...

我试过javasnoop - 但它不能附加。它不断尝试,但永远 - 我可以附加和调试的其他应用程序。

是否有任何其他方式/工具,可以附加到正在运行的jar和调试它?

如果有差别:应用程序正在开始一个EXE文件,然后使用的jar库...

感谢

+1

@ceving:这不是发布的问题的重复。在这里,他仍然可以在调试模式下启动应用程序。 –

+0

@ chris.tian但答案解释了如何附加到正在运行的进程,这是此问题中的问题。 – ceving

+0

我无法在调试模式下启动它?怎么样?我可以像任何其他人一样启动PC应用程序。或者你是什么意思? – user387184

回答

2

你可以反编译与JAD的jar文件(http://varaneckas.com/jad/),进口将该项目导入Eclipse并从那里进行调试(请参阅http://www.vogella.com/tutorials/EclipseDebugging/article.html)。这是你想要的?

+0

谢谢,但我不能编译它,因为我没有所有的库.. - 这是一个非常大的应用程序!我只是幸运地以某种方式保留了最重要的罐子 - 并非所有的 – user387184

+0

因为我对你的应用程序一无所知,所以我只能推荐一种迭代方法:逐步编译你的应用程序,并且为每个ClassNotFoundException你可以检查findjar.com来识别所需的库。 –

相关问题