Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 什么是默认的jvm错误日志位置?_Java - Fatal编程技术网

Java 什么是默认的jvm错误日志位置?

Java 什么是默认的jvm错误日志位置?,java,Java,如果在执行java-cp../blah someplace/somejar.jar时未指定错误日志位置,jvm错误日志将写入哪里?您所说的“jvm错误”是什么意思?如果参考堆栈跟踪,这些跟踪将写入System.err,这将导致标准错误流。这通常在终端中打印,就像System.out一样。如果需要,您可以在调用JVM时(使用2>/my/file.log)或通过重定向System.err从代码内部重定向此文件 一些日志框架重定向std错误,然后它取决于您的配置 如果您参考JVM崩溃日志(在JVM崩溃

如果在执行
java-cp../blah someplace/somejar.jar时未指定错误日志位置,jvm错误日志将写入哪里?

您所说的“jvm错误”是什么意思?如果参考堆栈跟踪,这些跟踪将写入
System.err
,这将导致
标准错误流
。这通常在终端中打印,就像
System.out
一样。如果需要,您可以在调用JVM时(使用
2>/my/file.log
)或通过重定向
System.err
从代码内部重定向此文件

一些日志框架重定向std错误,然后它取决于您的配置

如果您参考JVM崩溃日志(在JVM崩溃时创建,如果您不使用JNI,则永远不会发生,但事实上有时会发生),情况就不同了。这些文件通常在jvm启动的文件夹中创建。如果此文件夹不可写,Unix系统上会使用
/tmp
目录。

根据,如果未指定
-XX:ErrorFile=file
标志,系统将尝试在进程的工作目录中创建文件

如果无法在工作目录中创建文件(空间不足、权限问题或其他问题),则会在操作系统的临时目录中创建该文件

  • Oracle SolarisLinux操作系统上,临时目录为
    /tmp

  • Windows上,临时目录由
    TMP
    环境变量的值指定;如果未定义该环境变量,则使用
    TEMP
    环境变量的值


文件的默认位置是您的工作目录。Console如果是System.err或System.out,如果是某种日志框架,答案将是“取决于框架”:)如果您使用Mac,请尝试在聚光灯(右上角的放大镜)中搜索
Console
。这显示了大多数写入终端以外的其他对象的错误。好吧,同样,如果您不使用日志框架,那么是的。如果您使用一个,请检查它的配置。
如果您参考JVM崩溃日志(JVM崩溃时会创建这些日志,如果您不使用JNI,这些日志将永远不会发生)
这正是我的情况,但是在任何地方都找不到崩溃日志,您能帮我弄清楚如何获取它吗?