【发布时间】:2011-08-24 02:33:43
【问题描述】:
是否可以获取脚本出错的行号?
例子:
try
set a to "abc" + "123"
on error line number num
display dialog "Error on line number " & num
end try
【问题讨论】:
标签: applescript try-catch onerror
是否可以获取脚本出错的行号?
例子:
try
set a to "abc" + "123"
on error line number num
display dialog "Error on line number " & num
end try
【问题讨论】:
标签: applescript try-catch onerror
我不这么认为,try 语句看起来像这样
try
set a to "abc" + "123"
on error errMsg
display dialog "ERROR: " & errMsg
end try
但您可以查看script debugger,它将显示您的错误发生在哪一行
另一种选择是获得textmate,当它出错时它会为您提供行号,并且对于用多种语言编写代码也很有用
【讨论】:
实际上 on error 语法也包括错误号(但没有行号):
try
set a to "abc" + "123"
on error errorMessage number errorNumber
log ("errorMessage: " & errorMessage & ", errorNumber: " & errorNumber)
end try
您可以使用信号量来标记您的进度:
try
... your code here ...
set lineNumber to "17"
... more code here
set lineNumber to "18"
... more code here
on error errorMessage number errorNumber
log ("(line #" & lineNumber & ") errorMessage: " & errorMessage & ", errorNumber: " & errorNumber)
end try
我将第二次 mcgralm 推荐Script Debugger!
【讨论】:
【讨论】:
迟到了,但关于 Script Debugger,以下是 Mark Alldritt 的一个或许有用的回应:
是的,打开异常中断。这会导致调试器在抛出异常的地方中断。调试器还显示抛出异常时所有已知变量的状态。然后,您可以进入“错误时”块。
干杯 -马克
2013 年 1 月 24 日上午 8:43,Dan 写道:
当脚本在 Try 块中抛出错误时,是否有任何合理的方式来显示发生错误的行?
【讨论】: