Install4j JRE Bundle安装报错:启动路径不可访问及JDK检测异常
Install4j在MacOS下的JDK检测与JRE启动问题
- 在MacOS环境运行Install4j安装程序时,无法检测到通过Sdkman安装的OpenJDK 21,因此会从私有Web服务器下载
macos-amd64-21.0.1.tar.gz文件 - 下载完成后,安装程序将其解压到临时随机目录,但尝试启动时抛出**"launch path not accessible"(启动路径不可访问)**错误
- 运行
debug_installer.sh未发现问题,推测未执行JRE相关初始化步骤 - 预期行为:安装程序能正常检测已安装的JDK;无可用JRE时自动下载并完成安装启动
更新:已定位报错原因——MacOS版JRE的tar.gz压缩包根目录缺少Contents文件夹
相关检测日志
2024-05-15 02:47:14.766 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第640行] 搜索序列( Y, "EJAVA_HOME", "EJDK_HOME" ) 2024-05-15 02:47:14.766 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第649行] 检查标准位置 2024-05-15 02:47:14.766 JavaApplicationStub[35063:355027] -[Launcher findPublicJavaBundle:minVersion:maxVersion:requiredVmIdPrefix:allowBeta:] [第730行] JDK列表( ) 2024-05-15 02:47:14.766 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第657行] 检查环境变量JAVA_HOME 2024-05-15 02:47:14.766 JavaApplicationStub[35063:355027] -[Launcher replaceVariables:] [第369行] 替换路径 /Users/MY_USER/.sdkman/candidates/current 2024-05-15 02:47:14.767 JavaApplicationStub[35063:355027] -[Launcher replaceVariables:] [第390行] 返回路径 /Users/MY_USER/.sdkman/candidates/current 2024-05-15 02:47:14.767 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第657行] 检查环境变量JDK_HOME 2024-05-15 02:47:14.767 JavaApplicationStub[35063:355027] -[Launcher replaceVariables:] [第369行] 替换路径 /Users/MY_USER/.sdkman/candidates/current 2024-05-15 02:47:14.767 JavaApplicationStub[35063:355027] -[Launcher replaceVariables:] [第390行] 返回路径 /Users/MY_USER/.sdkman/candidates/current 2024-05-15 02:47:14.767 JavaApplicationStub[35063:355027] -[AppDelegate worker:] [第240行] 搜索其他JRE 2024-05-15 02:47:14.768 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第535行] { "allinstdirs5214-2439-8990-2257" = "/Applications;/Users/MY_USER/Library/Caches/MY_APP_NAME/MY_ENVIRONMENT_NAME;"; "instdir5214-2439-8990-2257" = "/Applications"; "singleBundleName5214-2439-8990-2257_/Applications" = "MY_APP_NAME_MY_ENVIRONMENT_NAME.app"; "updateSchedule4161-5082-9677-6795" = never; } 2024-05-15 02:47:14.768 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第572行] 检查路径 /Applications/MY_APP_NAME_MY_ENVIRONMENT_NAME.app/Contents/PlugIns/jre.bundle 2024-05-15 02:47:14.768 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第572行] 检查路径 /Users/MY_USER/Library/Caches/MY_APP_NAME/MY_ENVIRONMENT_NAME/.install4j/jre.bundle 2024-05-15 02:47:14.768 JavaApplicationStub[35063:355027] -[Launcher findJavaBundle:] [第572行] 检查路径 /.install4j/jre.bundle 2024-05-15 02:47:14.768 JavaApplicationStub[35063:355027] -[AppDelegate worker:] [第273行] 等待下载完成 0 2024-05-15 02:47:16.499 JavaApplicationStub[35063:354970] -[AppDelegate downloadDidFinish:] [第211行] 下载完成 2024-05-15 02:47:16.500 JavaApplicationStub[35063:355027] -[AppDelegate worker:] [第282行] 下载返回
解压路径示例
/var/folders/vb/wd0tzjrd0t9d7s32szf179tm0000gn/T/C2949B03-3FB4-4D8A-892F-E7AD7C2FC848-35063-000016F4FF276DC2/jre.bundle
启动报错日志
2024-05-15 02:47:17.516 JavaApplicationStub[35063:355027] -[AppDelegate worker:] [第334行] 参数列表: ( "-Dfile.encoding=UTF-8", "--add-opens", "java.desktop/java.awt=ALL-UNNAMED", "-Dinstall4j.defaultLanguage=de", "-Dexe4j.moduleName=/PATH_TO_MY_INSTALLER.app", "-Djava.class.path=/PATH_TO_MY_INSTALLER.app/Contents/Resources/app/i4jruntime.jar", "-Xdock:icon=/PATH_TO_MY_INSTALLER.app/Contents/Resources/app.icns", "-Xdock:name=MY_INSTALLER", "-Di4j.ownBundlePath=/PATH_TO_MY_INSTALLER.app", "-Di4j.jreBundle=/var/folders/vb/wd0tzjrd0t9d7s32szf179tm0000gn/T/C2949B03-3FB4-4D8A-892F-E7AD7C2FC848-35063-000016F4FF276DC2/jre.bundle", "-Di4j.tarFile=/var/folders/vb/wd0tzjrd0t9d7s32szf179tm0000gn/T/C2949B03-3FB4-4D8A-892F-E7AD7C2FC848-35063-000016F4FF276DC2/jre.tar.gz", "com.install4j.runtime.launcher.MacLauncher" ) 2024-05-15 02:47:17.518 JavaApplicationStub[35063:355027] -[AppDelegate worker:] [第387行] 启动路径不可访问: ( 0 CoreFoundation 0x00007ff806d637e6 __exceptionPreprocess + 242 1 libobjc.A.dylib 0x00007ff806853e9d objc_exception_throw + 48 2 Foundation 0x00007ff807d15e6e -[NSConcreteTask launchWithDictionary:error:] + 5349 3 JavaApplicationStub 0x000000000701aa8e -[AppDelegate worker:] + 2306 4 Foundation 0x00007ff807c993cc __NSThread__start__ + 1013 5 libsystem_pthread.dylib 0x00007ff806c1418b _pthread_start + 99 6 libsystem_pthread.dylib 0x00007ff806c0fae3 thread_start + 15 )
内容的提问来源于stack exchange,提问作者Snedecor II
相关产品推荐
相关产品推荐

