有没有一种简单的方法来禁用Xcode中的所有断点?我试过了:
这并不会禁用所有这些功能.我需要一次选择一个,并取消选中该复选框.我想知道是否有一种简单的方法可以完全禁用它们.
在使用第三方系统时,特别是可动态加载提供程序,控制器,组件等的非常可配置的系统,我有时只想知道何时访问某个对象或类.通常情况下,我会在源代码中的任何潜在行放置断点(令人讨厌,但它有效),但如果源不可用:
如何指示Visual Studio 2010 Ultimate打破对给定类的任何和每次访问?
注意:就我的经验而言,这通常是不可能的,但我希望看到它得到证实
我已经开始使用VS2010和F#interactive研究算法中的一些想法.
所以,我创建了一个DebugScript.fsx,我在那里写了一些代码并最终将它发送给F#Int进行测试.
在某些时候我需要抓住一个bug.但即使在一个简单的for循环中,我也无法设置断点:
for i in stringarray do
printfn "%s" i
Run Code Online (Sandbox Code Playgroud)
当我按F9设置断点时,VS会显示一个带有警告标志的红色圆圈.它的提示是"断点当前不会被击中".
当然,我确实打开了Debug菜单 - > Attach to process ... - > Fsi.exe
我尝试Debugger.Break()在循环内部放置,但这是调试器停止的唯一行,这使我无法继续在循环内部调试行.我也没有任何局部变量:(
也许我错过了一些明显的东西?
我在System.out.println("test")命令行上有一个断点.我相信命令是通过执行来达到的,因为我看到打印的字符串"test".但断点被忽略了.
断点始终是一个红色圆圈,没有勾或十字.我认为这是一个问题,当IDEA认为该类未加载时,因为该命令已执行.
我可以在各种情况下重现它:
当我按下调试(使用maven配置install exec:exec -DforkMode=never)
远程调试 - 我在控制台中以调试模式运行maven目标:
mvnDebug install exec:exec -DforkMode=never
要么
mvnDebug install exec:exec
IDEA中的远程调试配置:
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000在这两种情况下,调试器只打印"连接到目标VM,地址:'localhost:8000',传输:'socket'"
我也试过File > Invalidate Caches / Restart
并清理构建,但断点仍然被忽略.
组态:
Ubuntu 13.10
IntelliJ IDEA Ultimate build 133.944
Apache Maven 3.0.4
Java版本:1.7.0_51,供应商:Oracle Corporation
操作系统名称:"linux",版本:"3.11.0-17-generic",arch:"amd64",family: "UNIX"
编辑:pom.xml的相关部分:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.2.1</version>
<configuration>
<executable>java</executable>
<arguments>
<argument>-D--secret--.server.configuration=/usr/local/etc</argument>
<argument>-classpath</argument><classpath/>
<argument>com.--secret--.Server</argument>
</arguments>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud) 我正在使用Android Studio 2.1.3和gradle开发一个Android应用程序.
问题是,一个简单方法中的断点永远不会被命中,尽管它必须被命中,因为在应用程序调试期间满足条件.
首先,我认为问题与此问题的答案中描述的问题有关:
使用gradle构建库项目时,BuildConfig.DEBUG始终为false
为了测试这一点,我删除了库项目并将所有源代码集成到主app模块中.它什么都没解决.需要注意的是,以下是build.gradle,其中对于调试/发布,minify设置为false:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.mycompany.mymobileapp"
minSdkVersion 21
targetSdkVersion 21
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
debuggable true
jniDebuggable true
renderscriptDebuggable true
zipAlignEnabled false
}
debug {
debuggable true
minifyEnabled false
zipAlignEnabled false
jniDebuggable true
renderscriptDebuggable true
}
}
productFlavors {
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
testCompile 'org.mockito:mockito-core:2.0.5-beta'
testCompile 'com.android.support:support-v4:23.1.1'
testCompile 'org.powermock:powermock-api-mockito:1.6.2' …Run Code Online (Sandbox Code Playgroud)debugging android breakpoints android-studio android-gradle-plugin
无论可能实现相同结果的其他选项(即手动添加断点),是否可以以编程方式将断点添加到Visual Studio项目的源代码中?
如:
try
{
FunctionThatThrowsErrors(obj InscrutableParameters);
}
catch(Exception ex)
{
Log.LogTheError(ex);
AddBreakPointToCallingFunction();
}
Run Code Online (Sandbox Code Playgroud)
这样,当您下次运行调试时,它将自动在上次运行中导致故障的所有点上设置断点.
我不是说这是一种特别有用的调试方式.我只是想知道能力是否存在.
由于我无法访问我正在使用的库的完整源代码,但我确实有pdb文件,是否可以在"调试源代码"中设置断点?
如果是这样,我该怎么做?
我想在执行Scala工作表时执行源代码级调试.
由于工作表在保存时会自动评估,因此我不能像普通项目或文件一样使用"debug as"菜单选项.
有没有办法配置工作表在调试模式下运行,以便我可以单步执行我的代码?
我在Safari 7中调试JavaScript时遇到问题,我放入的断点被忽略了.我知道你启用/禁用所有断点,它们肯定是启用的.它根本不是停止代码执行!
有人经历过这个吗?有什么想法吗?
这是非常危险的,所以我想知道为什么它是允许的.由于我经常需要在VB.NET和C#之间切换,我有时会添加断点条件,如下所示:
foo = "bah"
Run Code Online (Sandbox Code Playgroud)
如果string变量foo是"bah,我想停止,所以正确的方法是使用foo == "bah"而不是foo = "bah".
但它"有效".在编译或运行时,您不会收到任何警告或错误.但实际上这会修改变量foo,"bah"即使它具有不同的值也会使它始终存在.由于这种情况无声地发生(断点永远不会被击中),因此非常危险.
为什么允许?我的推理错误在哪里(除了混淆C#和VB.NET语法)?在C#中(与VB.NET相反),赋值语句返回已分配的值,因此不是a bool,而是string在这种情况下为a.但是bool如果你选中"Is True"框,则 断点条件必须是a .
这是一个小样本"程序"和来自我(德国)IDE的截图:
static void Main()
{
string foo = "foo";
// breakpoint with assignment(foo = "bah") instead of comparison(foo == "bah"):
Console.WriteLine(foo); // bah, variable is changed from the breakpoint window
}
Run Code Online (Sandbox Code Playgroud)
断点条件对话框:

作为图像的代码包括断点:
