我有一个网络应用程序,它使用一些 adobe blazeds jars,即。 flex-messaging-core.jar。我想介入这个 jar (AMFConnection.java) 中包含的方法。我重新编译这个 jar,从源代码运行 ant 脚本,并将其放置在 WEB-INF\lib 文件夹中。调试这个 jar 的最简单方法是什么?
最佳答案
从概念上来说,调试位于 jar 中并由 war 加载的源代码并没有什么特别之处。使用 IDE 应该可以轻松完成。
唯一的要求是您的 IDE 将在项目中配置相应的源文件。
您的项目甚至不必包含所有源代码 - 拥有相关源代码就足够了,并且您将能够远程调试代码。
就应用程序服务器/Web 服务器/任何容器而言,它归结为在 Debug模式下运行应用程序。从技术上讲,您向 JVM 提供一些参数,它就会运行,以便启用来自您最喜欢的调试器的连接 - 实际上非常灵活。
您应该确保的唯一一件事(至少我会为此查看 ant 脚本:)) - 您不要使用“-d”选项编译源代码。
当将此选项提供给 java 编译器时,使其编译不包含调试信息的字节代码。这样你可以获得更优化的类,但无法调试它。例如,默认情况下,JRE 附带的类(java.lang..java.util. 等)都是以这种方式编译的。
希望这有帮助
关于java - 如何调试 web 应用程序中的 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12576352/