草庐IT

DEBUGGING

全部标签

启用扩展序列化调试信息的 Java 标志

我目前正在努力使用复杂对象在tomcat上进行HTTPsession复制。有些对象实现了Serializable,但拥有不可序列化的成员。不幸的是,默认情况下,堆栈跟踪在这里没有提供太多有用的信息。有一个标志-XX:????当发生NotSerializableException时,在堆栈跟踪中启用详细的类名。这个标志将帮助我找到错误的来源。但我忘记了它的名字国旗叫什么名字? 最佳答案 -Dsun.io.serialization.extendedDebugInfo=true 关于启用扩展

java - 我可以在 Android Studio 中调试时退回到之前的断点吗? (掉帧)

我希望能够执行我刚刚跨过的上一个断点我知道AndroidStudio是基于IntellijIdea的linkhere.类似的问题问同样的问题,但它与EclipseIDElinkhere相关还有一个答案是不可能的。linkhere我可以看到“掉帧”按钮。但默认情况下它是禁用的。那么有什么办法可以启用这个按钮吗? 最佳答案 您提到的关于Eclipse的答案对于AndroidStudio仍然有效:您不能退回到AndroidStudio中的上一个断点,因为DalvikVM和AndroidRuntime(ART)可以不支持。如果您在标准虚拟机

java - 我可以在 Android Studio 中调试时退回到之前的断点吗? (掉帧)

我希望能够执行我刚刚跨过的上一个断点我知道AndroidStudio是基于IntellijIdea的linkhere.类似的问题问同样的问题,但它与EclipseIDElinkhere相关还有一个答案是不可能的。linkhere我可以看到“掉帧”按钮。但默认情况下它是禁用的。那么有什么办法可以启用这个按钮吗? 最佳答案 您提到的关于Eclipse的答案对于AndroidStudio仍然有效:您不能退回到AndroidStudio中的上一个断点,因为DalvikVM和AndroidRuntime(ART)可以不支持。如果您在标准虚拟机

java - 为什么我不能在 IntelliJ 中拖动执行点(我可以在 Visual Studio 中)

在VisualStudio中,调试时,可以将执行点(当前指令指针,黄点)拖到当前方法的另一处。这在IntelliJ中是不可能的,有些人说这在Java中通常是不可能的。为什么? 最佳答案 IntelliJ通过标准的Java调试接口(interface)与正在运行的JVM交互,因此它可以针对不同的JDK调试程序。这不支持您描述的移动执行点。它确实可以让您回退调用堆栈并再次执行方法调用。在IntelliJ中,使用线程窗口选择挂起线程的堆栈帧并返回到它。然后继续线程以在程序中重新调用该点的方法。注意:这不会回滚对象的状态,所以可能会出现奇怪

java - 为什么我不能在 IntelliJ 中拖动执行点(我可以在 Visual Studio 中)

在VisualStudio中,调试时,可以将执行点(当前指令指针,黄点)拖到当前方法的另一处。这在IntelliJ中是不可能的,有些人说这在Java中通常是不可能的。为什么? 最佳答案 IntelliJ通过标准的Java调试接口(interface)与正在运行的JVM交互,因此它可以针对不同的JDK调试程序。这不支持您描述的移动执行点。它确实可以让您回退调用堆栈并再次执行方法调用。在IntelliJ中,使用线程窗口选择挂起线程的堆栈帧并返回到它。然后继续线程以在程序中重新调用该点的方法。注意:这不会回滚对象的状态,所以可能会出现奇怪

java - System.Diagnostics.Debugger.Break() 喜欢使用 java 吗?

有没有像C#中的System.Diagnostics.Debugger.Break()那样在Java中发出断点信号的方法? 最佳答案 是的,我想要这样的东西,所以我在C时代实现了一个非常简单的解决方案。如果您想要一个轻量级的答案,这可能会很有用。publicclassDebugHelper{publicstaticbreakHere(){inti=0;//SetbreakpointonthislineinyourIDE}}使用这种方法。在“inti=0;”的代码中放置一个断点线。并在您正在调试的代码中调用该方法。这是获得一些动态调试

java - System.Diagnostics.Debugger.Break() 喜欢使用 java 吗?

有没有像C#中的System.Diagnostics.Debugger.Break()那样在Java中发出断点信号的方法? 最佳答案 是的,我想要这样的东西,所以我在C时代实现了一个非常简单的解决方案。如果您想要一个轻量级的答案,这可能会很有用。publicclassDebugHelper{publicstaticbreakHere(){inti=0;//SetbreakpointonthislineinyourIDE}}使用这种方法。在“inti=0;”的代码中放置一个断点线。并在您正在调试的代码中调用该方法。这是获得一些动态调试

java - 调试时如何处理 ClassNotLoadedException?

所以我正在(远程)在Eclipse中调试一个java/jboss应用程序,逐行执行。在某一时刻,一个GridSquare对象数组(GridSquare是一个相当简单的独立类,包含一些属性和方法)由方法调用创建,即:GridSquare[]squares=this.theGrid.getSquares(14,18,220,222);...当我实际执行代码时,squares数组确实填充了GridSquare对象,但在单步执行代码和调试时我会感到奇怪。在上面显示的赋值之后的行上的断点处,如果我尝试查看squares数组,而不是值,我会得到这个:org.eclipse.debug.core.D

java - 调试时如何处理 ClassNotLoadedException?

所以我正在(远程)在Eclipse中调试一个java/jboss应用程序,逐行执行。在某一时刻,一个GridSquare对象数组(GridSquare是一个相当简单的独立类,包含一些属性和方法)由方法调用创建,即:GridSquare[]squares=this.theGrid.getSquares(14,18,220,222);...当我实际执行代码时,squares数组确实填充了GridSquare对象,但在单步执行代码和调试时我会感到奇怪。在上面显示的赋值之后的行上的断点处,如果我尝试查看squares数组,而不是值,我会得到这个:org.eclipse.debug.core.D

java - 适用于 Java : return desirable value from method during debug 的 IntelliJ IDEA 调试器

在Eclipse中有一个“强制返回”功能,它允许从方法调用中返回任何选定的对象。IntelliJIDEA中有这样的功能吗? 最佳答案 是的,有。此功能在IntelliJIDEA15中引入。调试时,打开调试器窗口,选择框架选项卡(线程旁边),然后右键单击列表中的框架/方法并选择“强制返回”并提供值。 关于java-适用于Java:returndesirablevaluefrommethodduringdebug的IntelliJIDEA调试器,我们在StackOverflow上找到一个类似