是否有一种方法可以在Java中发出断点信号,如C#中的System.Diagnostics.Debugger.Break()?
有没有办法用Delphi完全调试Windows服务?
我正在开发一个django应用程序,随着时间的推移,URL已经增长.我现在和他有很多关系,由于我做了一些改变,一个视图开始出现故障.当我尝试获取http://example.com/foo/edit_profile时,它应该执行视图某些视图功能,X但它正在执行Y.在某个地方,网址路由混乱,我无法弄清楚.我使用该django.core.urlresolvers.resolve方法从shell中尝试它,我可以确认URL被错误地解决了.但是,我不知道如何调试它并查明问题.
理想情况下,我希望看到类似"测试此模式","测试此模式"等等,直到最终找到正确的模式,然后我可以环顾四周解决的问题.我找不到这样的东西.
这不是大型项目的常见问题吗?人们做什么?
更新
我知道系统如何工作以及如何逐个浏览URL.这就是我想要做的.这个问题基本上是要求捷径.
使用内置的JavaScript调试器运行时,有没有办法登录Safari的JavaScript控制台?我已经阅读了Firefox JavaScript日志记录问题,并希望在WebKit/Safari中有一种简单("原生")方式.
谢谢
我正在使用maven/surefire/eclipse编写一些代码,然后再进行测试/调试.
标准方法是使用maven.surefire.debug maven属性.默认情况下,启用此属性后,maven将开始侦听端口5005,并且我可以使用远程调试器附加到已调试的进程.当测试完成远程调试器与服务器的连接时.
在eclipse中使用时,此过程涉及两个步骤:
我想要实现的是将其减少为:
我发现,将maven.surefire.debug属性设置为某些远程调试选项将改变远程调试行为.因此,当我指定ie
-Dmaven.surefire.debug =" - Xdebug -Xrunjdwp:transport = dt_socket,server = n,address = 5005"
然后build将尝试连接到我的eclipse进程,监听端口5005.这样我就可以反转maven和eclipse的默认客户端/服务器角色.
然而,这种方法存在一个大问题.它没有给我任何东西,因为在maven构建完成后,eclipse停止在服务器端口上侦听.这是我不理解的部分.当我作为调试客户端从eclipse连接到例如WebLogic服务器时,它允许我根据需要自由连接/断开连接.
任何人都知道这是否正常,或者我是否需要指定一些额外的选项来使调试maven测试更容易?
我一直在谷歌上搜索并检查gdb手册,但似乎无法找到我正在尝试做的答案.
有没有办法让gdb打印出给定类类型的所有方法的列表?print命令似乎只显示数据成员和字段,没有显示任何方法.
另外,为了更进一步,有没有办法在给定base*指针的情况下打印所有正确的虚拟方法?比如说:
struct A
{
virtual void foo() {}
};
struct B : public A
{
void foo() {}
};
int main()
{
A *b = new B;
}
Run Code Online (Sandbox Code Playgroud)
如何让gdb打印变量*b并让它显示正确的虚拟方法?
谢谢
我正在使用Entity Framework和Linq to Entitites.
我想知道Visual Studio 2012中是否有任何方法可以逐步调试此代码.在放置断点时,光标越过它但不会进入.
我更感兴趣的是看到xe的值..而不是例如生成的sql.
注意:我可以使用其他工具或Visual Studio插件.
IEnumerable<EventPushNotification> eventToPushCollage = eventsForEvaluation
.GroupJoin(eventCustomRepository.FindAllPushedEvents(),
e => e.Id,
p => p.PushedEventId,
(e, p) => new { e, p })
.Where(x => x.e.DateTimeStart > currentDateTime &&
currentDateTime >= x.e.DateTimeStart.AddMinutes(defaultReminders) && // Data from default reminder for collage event in web.config
x.p.Count() == 0) // Check if the Event has not being already pushed
.Select(y => new EventPushNotification
{
Id = y.e.Id,
EventTitle = y.e.EventTitle,
DateTimeStart = y.e.DateTimeStart,
DateTimeEnd = y.e.DateTimeEnd,
Location …Run Code Online (Sandbox Code Playgroud) 我正在尝试调试我制作的Android主屏幕小部件应用程序.当按下窗口小部件上的按钮时,调试器启动,然后它只是从VM断开连接.没有理由.我使用的是Windows 10.
这就是日志所说的:
D/Atlas: Validating map... D/libEGL: loaded
/system/lib/egl/libEGL_emulation.so D/libEGL: loaded
/system/lib/egl/libGLESv1_CM_emulation.so D/libEGL: loaded
/system/lib/egl/libGLESv2_emulation.so
D/ ] HostConnection::get() New Host Connection established 0xef0394f0, tid 3709
I/OpenGLRenderer: Initialized EGL, version 1.4
D/OpenGLRenderer: Enabling debug mode 0 W/EGL_emulation: eglSurfaceAttrib not implemented
W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xef1485e0, error=EGL_SUCCESS
D/roboguice.RoboGuice: Using annotation database(s).
D/roboguice.RoboGuice: Using annotation database(s) : [, roboguice]
D/roboguice.RoboGuice: Time spent loading annotation databases : 21
W/art: Verification of com.gdbd.geedeebeedee.model.GdbdWidgetRecord
com.gdbd.geedeebeedee.model.GdbdWidgetRecordsRealmImpl.create(java.util.Date) took 127.878ms
W/art: Verification of com.gdbd.geedeebeedee.model.GdbdWidgetRecord
com.gdbd.geedeebeedee.model.GdbdWidgetRecordsRealmImpl.getTodaysRecord() took …Run Code Online (Sandbox Code Playgroud) 我无法在UI测试中打印调试信息.配置:Xcode 10和SWIFT 4.2.
当我尝试在控制台中打印某些内容时,我只能看到错误:
"error: Couldn't IRGen expression, no additional error"
Run Code Online (Sandbox Code Playgroud)
我在早期版本的Xcode(8,9等)中没有任何问题,仅在Xcode 10中.我无法打印任何东西,当我放置断点并尝试打印例如应用程序po XCUIApplication()或类似的东西.
在我在控制台中编写的Xcode的早期版本中:
"po XCUIApplication.debugDescription()"我看到了我的应用程序的结构.
我们发现当外部框架添加到UI Tests Target时会出现问题.我们创建了一个包含RxSwift.framework的示例项目,可用于重现我们的问题:
https://drive.google.com/file/d/1BlByFVNaOdDqT4ED9Jwyi1kJ99PTRQen/view?usp=sharing
问候.
我希望能够使用print()或类似的方法执行python调试,在此方法中,除了通常的输出外,它还会打印传递的表达式。
例如,以下代码:
print(42 + 42)
print(type(list))
print(datetime.now())
Run Code Online (Sandbox Code Playgroud)
电流输出:
84
<class 'type'>
2019-08-15 22:43:57.805861
Run Code Online (Sandbox Code Playgroud)
预期产量:
42 + 42 : 84
type(list) : <class 'type'>
datetime.now() : 2019-08-15 22:43:57.805861
Run Code Online (Sandbox Code Playgroud)
当前,可以通过手动添加表达式字符串来实现相同目的(不是那么优雅,而且违反了DRY原理)。
print("42 + 42 : ", 42 + 42)
print("type(list) : ", type(list))
print("datetime.now() : ", datetime.now())
Run Code Online (Sandbox Code Playgroud)
我试图覆盖内置打印,但是没有成功:
import builtins
def print(*args, **kwargs):
return builtins.print(*args, **kwargs) # passed expression isn't available here as string!
Run Code Online (Sandbox Code Playgroud)
有没有办法做到这一点?谢谢!