user3505258
user3505258

Reputation: 321

Install4j Mac OS X installer throws NullPointerException

Looking through the installation.log I found my Mac OS X installer (built with install4j 6.1) is throwing a NullPointerException when running the InstallFilesAction. Apparently it's trying to use AppleScript but it can't find the engine:

[ERROR] com.install4j.runtime.beans.actions.InstallFilesAction [ID 6]: 
java.lang.NullPointerException
        at com.install4j.runtime.installer.helper.AppleScriptHelper.initEngine(AppleScriptHelper.java:30)
        at com.install4j.runtime.installer.helper.AppleScriptHelper.executeWithReturnValue(AppleScriptHelper.java:42)
        at com.install4j.runtime.installer.helper.AppleScriptHelper.getRecords(AppleScriptHelper.java:21)
        at com.install4j.runtime.installer.platform.macos.MacProcessHelper.addGuiProcesses(MacProcessHelper.java:104)
        at com.install4j.runtime.installer.platform.macos.MacProcessHelper.getRunningProcesses(MacProcessHelper.java:81)
        at com.install4j.runtime.installer.helper.RunningProcessChecker$RunningProcessThread.run(RunningProcessChecker.java:329)
        javax.script.ScriptException: AppleScript engine not found
javax.script.ScriptException: AppleScript engine not found
        at com.install4j.runtime.installer.helper.AppleScriptHelper.executeWithReturnValue(AppleScriptHelper.java:44)
        at com.install4j.runtime.installer.helper.AppleScriptHelper.getRecords(AppleScriptHelper.java:21)
        at com.install4j.runtime.installer.platform.macos.MacProcessHelper.addGuiProcesses(MacProcessHelper.java:104)
        at com.install4j.runtime.installer.platform.macos.MacProcessHelper.getRunningProcesses(MacProcessHelper.java:81)
        at com.install4j.runtime.installer.helper.RunningProcessChecker$RunningProcessThread.run(RunningProcessChecker.java:329)

Is there a way to fix this?

EDIT: I also reproduced this on an installer built using 6.0.4

Upvotes: 2

Views: 256

Answers (1)

Ingo Kegel
Ingo Kegel

Reputation: 47995

That is a bug in the JRE that occurs on some machines. This exception means that some processes cannot be detected but it does not impact the installer otherwise.

Upvotes: 1

Related Questions