我有一个C程序,其中包含一些错误代码的定义.像这样:
#define FILE_NOT_FOUND -2
#define FILE_INVALID -3
#define INTERNAL_ERROR -4
#define ...
#define ...
Run Code Online (Sandbox Code Playgroud)
是否可以按其值打印定义的名称?像这样:
PRINT_NAME(-2);
// output
FILE_NOT_FOUND
Run Code Online (Sandbox Code Playgroud) 所以如果我打电话
public void throwException throws Exception {
throw new Exception("foo") ;
}
Run Code Online (Sandbox Code Playgroud)
输出将如下所示:
java.lang.Exception: foo
at SomeClass.throwException(SomeClass.java:5)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
...
Run Code Online (Sandbox Code Playgroud)
现在,如果我单击(SomeClass.java:5),IDE 会跳转到 SomeClass.java 中的第 5 行。
使用 System.out 或抛出异常时是否可以手动生成这些超链接?我已经尝试通过更改 StackTraceElement 来操纵异常,但它似乎只适用于有效的 Java 类。
我正在开发一个项目,我必须解析一个唯一定义的文件,并希望打印超链接,这将直接导致该文件,而不是发生问题的解析方法。