|
|
1
4
据我所知,除了调试API之外,还没有正式的Java API,它也可以从即将被调试的虚拟机中使用。
在运行时创建的每个异常得到通知的一种简单、快速和肮脏的方法是将一些跟踪代码直接黑客到可丢弃类的构造函数中,编译它并将其放入
回应评论: 关于调试器API:上次我这样做时,使用了 JVMDI 构建本机JNI/JVMDI DLL并从VM内部访问它。它工作,让你做各种各样的有线的东西,Java通常不提供,但我会认为这更是一个黑客比使用修补的可抛出类。除此之外,JVMDI已经被弃用,并且自从Java 1.6以来被JVM TI所取代。我不知道您是否可以以及如何使用这个新的调试器API来做类似的事情。 使用一个修改过的一次性是快速的,容易得到正确的,不强加任何性能退化本身,甚至不 真正地 如果您控制着执行环境,那么就进行黑客攻击。你可以把它看作某种AOP。;)但是我仍然只会用它来发现很难发现的错误,而不是在生产代码中,或者只是作为最后的手段。像这样的东西肯定不应该作为设计的一部分。最好的长期方法是让所有的开发团队在一些常见的异常处理上达成一致。 阿尔索 FindBugs 如果您决定进行代码检查来查找所有这些异常被捕获和未报告的地方,那么这会有很大帮助。 |
|
|
2
1
我可能会取消jdk的jar,修改“exception”来记录您的异常,然后重新jar它。 这是一个非常合理的解决方案,不会造成任何问题——JDK类在很大程度上只是标准的Java类。 在读取JDK的版本之前,通过操纵类路径来读取“exception”的版本,您可以在不修改JDK的情况下完成这项工作——这样就不难分发了。 |
|
|
3
0
GDB是为GCC构建的程序设计的,如果您正在调试Java应用程序,我建议您在IDE中使用Java调试器。它可以用来捕获抛出的任何异常。 注意:一些库在正常启动期间抛出异常,并设想WebLogic有自己的一些异常。 |
|
|
4
0
有一个关于Fedora-Abrt-自动错误报告工具的项目。 它还报告未捕获的JVM异常。 现在(2013年),已经开始努力让它也捕获jboss as/eap/wildfly异常。 请随时关注以下信息: https://fedorahosted.org/abrt/milestone/Support_for_JAVA_exceptions |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |