1

我正在编写 java 代码并想使用 dbgview (如果可能的话,还有 log4j )。通过搜索 log4j 的文档,似乎与 log4net 不同,log4j 不支持OutputDebugStringAppender将输出重定向到 dbgview 所听的内容。

如何创建一个 dbgview 可以解析的日志文件?如何从 java 将字符串发送到调试流?java是否有任何debugview替代方案?

我正在使用 eclipse、Windows 7 和最新的 log4j jar。

4

1 回答 1

3

Java 没有将调试打印发送到 Windows 调试输出的本机功能。

但是,您可以通过使用 JNA 导入 Windows OutputDebugString 函数来轻松完成此操作。它会破坏任何多平台功能(您将只能在 Windows 上运行),但它会起作用。

你可以这样做:

import com.sun.jna.Library;
import com.sun.jna.Native;

public interface Kernel32 extends Library
{
    public void OutputDebugStringA(String Text);
}

调用 OutputDebugString 时,您需要这样做:

 Kernel32 lib = (Kernel32) Native.loadLibrary(“kernel32″, Kernel32.class);
 lib.OutputDebugStringA(message);
于 2013-01-31T07:33:34.150 回答