如何跟踪基于javapackager的应用程序在macOS上启动时的作用?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何跟踪基于javapackager的应用程序在macOS上启动时的作用?相关的知识,希望对你有一定的参考价值。
我编写了一个基于Java的应用程序,用于使用Oracle的Java 8中的javapackager
创建的macOS。它可以在几个月内完美地工作,可能是由于最近的Java更新,现在当我重新构建应用程序时,结果退出而没有任何消息执行时直接在终端shell(即使用java -jar path/to/my.jar
)中运行jar文件本身可以正常工作而不会出错。我无法弄清楚.app
版本出了什么问题,并且无法弄清楚如何从javapackager创建的任何东西中获取任何诊断信息。
我怎样才能追踪.app
在运行时使用javapackager
创建的内容?
我正在使用来自Oracles Java 1.8 u152的-deploy -native image
的javapackager
选项在OSX 10.12.6上创建应用程序。我的问题是关于如何让生成的.app
打印它正在做的事情,或者获得错误诊断或其他东西,以帮助弄清楚它在幕后做了什么。运行javapackager
本身并不需要帮助。
我认为使用Console
将有助于理解正在发生的事情,但信息太稀疏,难以解释。隐藏了很多其他进程输出后,归结为以下打印:
default 22:43:22.523842 -0800 taskgated MacOS error: -67062
default 22:43:22.733680 -0800 SBML Test Runner WARNING: The Gestalt selector gestaltSystemVersion is returning 10.9.6 instead of 10.12.6. This is not a bug in Gestalt -- it is a documented limitation. Use NSProcessInfo's operatingSystemVersion property to get correct system version number.
Call location:
default 22:43:22.733853 -0800 SBML Test Runner 0 CarbonCore 0x00007fff97a4d1b1 ___Gestalt_SystemVersion_block_invoke + 121
default 22:43:22.733876 -0800 SBML Test Runner 1 libdispatch.dylib 0x00007fffac28b8fc _dispatch_client_callout + 8
default 22:43:22.733897 -0800 SBML Test Runner 2 libdispatch.dylib 0x00007fffac28b8b9 dispatch_once_f + 38
default 22:43:22.733930 -0800 SBML Test Runner 3 CarbonCore 0x00007fff979db292 _Gestalt_SystemVersion + 976
default 22:43:22.733982 -0800 SBML Test Runner 4 CarbonCore 0x00007fff979daaad Gestalt + 139
default 22:43:22.734010 -0800 SBML Test Runner 5 libswt-pi-cocoa-4628.jnilib 0x00000001283072de Java_org_eclipse_swt_internal_cocoa_OS_Gestalt + 158
default 22:43:22.734028 -0800 SBML Test Runner 6 ??? 0x00000001067919f4 0x0 + 4403567092
虽然taskgated
错误起初似乎有关,但一些谷歌搜索表明它是一个常见的问题,而不是致命的。
首先,我将通过终端调用打包的应用程序包中的二进制文件来验证实际的JVM:
/Applications/MyApp.app/Contents/MacOS/MyApp
如果出现JVM错误,您将输出打印到stdout。如果您可以确认JVM正常启动,您可以使用jvisualvm进行进一步分析。
以上是关于如何跟踪基于javapackager的应用程序在macOS上启动时的作用?的主要内容,如果未能解决你的问题,请参考以下文章
当我在基于类的视图中应用过滤器时,如何在 django 中使用分页分页。网址总是不断变化我如何跟踪网址