标签: debugging

将subversion存储库编号转换为代码

我想实现一种在代码中记录项目版本的方法,以便在测试时使用它并帮助跟踪错误.似乎使用的最佳版本号只是Subversion的当前版本号.有没有一种简单的方法可以将这个数字挂钩到(我的情况下是C++)头文件或其他什么东西,然后我可以在代码中找到它?我猜这是一个帖子提交钩子什么的?

有没有人有任何实现这个的经验(请分享代码,请?),或者可以提出更好的选择?谢谢.

svn testing debugging revision versions

39
推荐指数
5
解决办法
5万
查看次数

SOS(罢工之子)调试器扩展名称背后的故事是什么?

"罢工之子"这个名字有什么意义?它有什么意义,还是听起来很酷?

.net debugging sos

39
推荐指数
2
解决办法
5089
查看次数

如何确定是否启用了"调试模式"

Java程序如何确定它是否在调试模式下运行?

应用程序在常规"全速"模式下的行为应与"调试模式"(在附加调试器时,在调试模式下运行时)略有不同.应用程序通过TCP与另一台计算机,另一个进程或其自身进行通信.我的同事希望我们Socket.setSoTimeout(1000)默认使用,以便从套接字读取最多可以阻止1秒钟.调试时,这当然是不够的,应用程序停止工作.所以解决方案是设置SO_TIMEOUT更高,但只是在调试模式(例如:无限制).现在,我并不总是设置断点或者不想使用调试构建,我可以自己设置"debug"属性.有时我会附加调试器(远程调试).我主要使用Eclipse,所以在那里工作的解决方案是可以的.

可能的答案包括:

  1. 要确定是否在调试模式下运行,请使用以下方法java.lang.management.*javax.management.*...

  2. 您的同事因X原因错误SO_TIMEOUT,默认情况下您不应设置为1秒.

更新

我知道系统属性方法,但我将问题留待解决我原来的问题.

java eclipse debugging

39
推荐指数
3
解决办法
2万
查看次数

什么会使PerformanceCounterCategory.Exists无限期挂起?

我有一个使用性能计数器的应用程序,已经工作了几个月.现在,在我的开发机器和另一台开发人员机器上,当我调用PerformanceCounterCategory.Exists时它已经开始挂起.据我所知,它无限期地挂起.我使用哪个类别作为输入并不重要,使用API​​的其他应用程序表现出相同的行为.

调试(使用MS Symbol Servers)显示它是对挂起的Microsoft.Win32.RegistryKey的调用.进一步的调查表明,这条线是挂起的:

while (Win32Native.ERROR_MORE_DATA == (r = Win32Native.RegQueryValueEx(hkey, name, null, ref type, blob, ref sizeInput))) { 
Run Code Online (Sandbox Code Playgroud)

这基本上是一个尝试为性能计数器数据分配足够内存的循环.它开始于size = 65000并进行一些迭代.在第4次通话中size = 520000,Win32Native.RegQueryValueEx挂起时.

此外,相当令人担忧的是,我在PerformanceCounterLib.GetData的参考源中找到了这条评论:

    // Win32 RegQueryValueEx for perf data could deadlock (for a Mutex) up to 2mins in some 
    // scenarios before they detect it and exit gracefully. In the mean time, ERROR_BUSY,
    // ERROR_NOT_READY etc can be seen by other concurrent calls (which is the reason for the 
    // wait loop and …
Run Code Online (Sandbox Code Playgroud)

.net c# debugging performancecounter

39
推荐指数
1
解决办法
4778
查看次数

如何在Visual Studio Debugger中调试LinqPad查询?

我可以附加调试器并让它中断 - 但它找不到.cs文件,我认为LinqPad删除它作为其构建的一部分.. 8-(

debugging linqpad visual-studio

39
推荐指数
2
解决办法
8200
查看次数

在Eclipse中调试Playframework

我刚从Netbeans转到Eclipse.在Netbeans中,我可以开箱即用地调试Playframework应用程序.但是,在Eclipse中,为了调试Web应用程序(特定的Playframework应用程序),似乎很难配置它.

就像玩!文档,

主启动器只能与Run As eclipse命令一起使用.然后,您可以使用"调试为"连接"连接JPDA启动程序"以随时启动调试会话.停止调试会话不会停止服务器.

但是,我无法在"Debug As"(我正在使用Eclipse Classic 3.7.0)中看到"Connect JPDA launcher".我搜索过JPDA(我是Java的新手,不知道"主要启动器"和JPDA,然后在http://javarevisited.blogspot.com/2011/02/how-to中配置远程调试作为指示 -setup-remote-debugging-in.html 但是它返回了一个错误:

无法连接到远程VM.拒绝连接.连接被拒绝:连接

我搜索过并找到了一些建议:

1.)编辑catalina.bat并添加行:set JPDA_TRANSPORT = dt_socket ... set JPDA_ADDRESS = 8000 AND 2.)编辑startup.bat调用"%EXECUTABLE%"jpda start%CMD_LINE_ARGS%

实际上我并不清楚这一点,我想这是配置Tomcat.但是,我正在使用Play!默认服务器,检查application.conf并确保它正在侦听JPDA的端口9000和8000.

当然,我在调试之前启动了Play应用程序,我可以通过端口9000正常访问应用程序.我使用的是没有管理员权限的Win 7.

你有关于调试Play的详细指南吗?在Eclipse中?

eclipse debugging playframework

39
推荐指数
3
解决办法
4万
查看次数

如何使用节点检查器正确调试node.js?

我有一个内置node.js的应用程序,我使用节点检查器进行调试.但由于这个原因,这很难:

  1. 重新启动服务器后,我的断点永远不会保存
  2. 我不能在尚未加载的文件上放置断点; 所以我必须从第一个脚本进入我想要的脚本; 非常痛苦!

你如何使用节点检查器真正调试node.js?

有关如何使用node.js的视频非常具有误导性,因为一切都在模块中...
http://www.youtube.com/watch?v=AOnK3NVnxL8

或者这个脚本已经加载到第一个脚本中
http://www.youtube.com/watch?v=HJOH0-g8f6E&feature=mfu_in_order&list=UL

编辑:

没有人能回答这个问题?:■

debugging node.js

39
推荐指数
3
解决办法
2万
查看次数

如何为Android蚂蚁调试版本指定调试密钥库的位置?

在创建debug .apk的s(<project-name>-debug.apk)时,是否可以指定自己创建的调试密钥库的位置ant debug?我只看到指定发布密钥库的位置的可能性.

我想在多台PC上共享调试密钥库,而不是将它们复制到放在".android"目录中的那个.调试密钥库可以例如驻留在源代码库中.但是我需要一种方法来告诉ant在哪里找到调试密钥库.

ant debugging android keystore

39
推荐指数
3
解决办法
4万
查看次数

导入ObjC框架时,Swift调试器不显示变量值

当我使用Sprite Kit创建一个新的OS X"Game"项目,并在任何地方设置断点时,我可以看到变量值就好了:

在此输入图像描述

然后我更改代码以导入我自己的框架(TilemapKit),这是一个纯粹的Objective-C框架:

import SpriteKit
import TilemapKit

class GameScene: SKScene {
    override func didMoveToView(view: SKView) {
        print("dang!")
    }
}
Run Code Online (Sandbox Code Playgroud)

没有其他变化.我甚至没有使用任何TilemapKit代码.当断点触发时,我看到:

在此输入图像描述

就观察变量值而言,整个项目停止可调试.这种行为完全一致.没有框架导入,我可以再次调试.

由于我使用Xcode 7 beta(7A121l)和OS X 10.11开发人员预览版,我知道这可能只是一个(临时)错误.

命令行Tiles设置为使用Xcode 7.0版本btw.我尝试在框架目标中启用模块,确保部署目标相同(10.11),禁用符号剥离.我在其中添加了一个Bridging Header和#imported TilemapKit框架(在这种情况下删除Swift导入仍然会给我不可调试的应用程序,所以我导入框架的方式和位置似乎并不重要).

有没有人建议什么可能导致这种行为以及我如何解决这个问题 - 或者至少我如何尝试缩小问题?

罪魁祸首是否更有可能与项目的框架构建设置相关联?我是否需要在应用程序项目中启用某些内容以使其与ObjC框架兼容?(我已在其他链接器标志中获得-ObjC)


更新:

我跑进po self调试控制台,发现了这个通知:

<built-in>:3:6: error: module 'TilemapKit' was built in directory '/TilemapKit.framework' but now resides in directory './TilemapKit.framework'
#define __clang_major__ 7
     ^
missing required module 'TilemapKit'
Debug info from this module will be unavailable in the debugger.
Run Code Online (Sandbox Code Playgroud)

为什么框架构建目录发生了变化?那为什么会这么重要以及如何解决这个问题?

PS:新的ObjC应用程序中的相同框架可以调试得很好.

debugging xcode frameworks swift2 xcode7-beta2

39
推荐指数
2
解决办法
1万
查看次数

Android Studio的调试窗口中"'此'不可用"

我在Android Studio的调试窗口中收到此消息.这不是静态方法,也不是类.这是什么意思?

在此输入图像描述

debugging android android-studio hugo-logging

39
推荐指数
3
解决办法
1万
查看次数