The powerful multi-platform Java installer builder for Mac

install4j for Mac

install4j for Mac

  -  165.14 MB  -  Trial
  • Latest Version

    install4j 11.0 LATEST

  • Review by

    Daniel Leblanc

  • Operating System

    macOS 10.12 Sierra or later

  • User Rating

    Click to vote
  • Author / Product

    ej-technologies GmbH / External Link

  • Filename

    install4j_macos_11_0.dmg

  • MD5 Checksum

    6b230f3d1fd23a2b26e6e54aa5e11bdb

install4j for Mac is a powerful multi-platform Java installer builder that generates native installers and application launchers for Java applications. Some installer builders require that you first become an expert in building installers. Not so with the app, where all configuration steps are intuitive and self-explanatory.

The install4j IDE for macOS guides you naturally through the process of gathering the required information. Building an installer that works is a matter of minutes. Nonetheless, you have a powerful arsenal of functionality at your disposal when you need it.

The installer is the first thing your users see of your application. A smooth installation experience is an important step in creating happy users and a successful product. A substandard installer, however, can ruin the initial impression that is so important for the image of a product. With the IDE, your installers will look beautiful and feel natural to users on all platforms.

With the app, you can configure the screen flow for the installer and uninstaller it in any way you like. It provides screens and actions for a wide variety of use cases and allows you to create your own actions directly in the install4j IDE. Actions can be attached to each screen, making install4j for Mac a visual programming system far more powerful than traditional installer builders.

It offers several templates for updaters that enable you to create an auto-update solution for your application with just a few clicks. Auto-updaters are fully customizable, so they can support your special requirements for a large number of scenarios. More generally, It supports the creation of custom installer applications that are packaged with your application.

Querying information from the user that's specific to your application does not have to be hard. Besides programming your own custom screens, It includes a unique concept of form screens that look good and are easy to configure. With its powerful variable system, It enables you to use the entered information in other screens and actions. Creating a user interface cannot get any easier than this.

Note: 90 days trial version.

Also Available: Download install4j for Windows

What's new in this version:

New features:
- macOS notarization is now cross-platform, so you can fully build all media files on Linux or Windows
- Added a PKCS #11 option for code signing on macOS
- Added a selection dialog for the PKCS #11 slot index, listing HSM descriptions and manufacturers
- Improved PKCS #11 certificate selection with better listings of available certificates.
- A PKCS #11 certificate can now be selected by its label in addition to the issuer/serial selection
- For PKCS #11, an automatic selection option for the code signing certificate with the longest validity period is now available
- When choosing certificate files on the "General Settings → Code Signing step", hidden files are now shown in the file chooser
- Added an option on the "General Settings → Code Signing" step to use an external executable for Windows code signing
- Added a "Chained certificates" directory option for Windows code signing. This is required if your intermediate certificates are not included in the key store.
- The script editor now shows caret highlights. Caret highlights feature separate colors for read and write access of the selected element.
- Improved the proposals for code completion in script editors, including tab-expandable code snippets like "serr", "log" and "error".
- Code completion in the script editor now suggests automatically as you type by default. You can disable this behavior in the Java editor settings.
- Improved imports for code completion and for type parameters of implementation stubs in the script editor. Static imports are used for install4j API classes.
- Added an action to rename variables in script editors (Code → Rename)
- Added an action to reformat the entire script or selected code in script editors (Code → Reformat Code). Formatting options can be specified with an Eclipse settings file in the Java editor settings.
- In the Java editor settings, you can now configure the tab size.
- In script editors, typing a closing brace now reformats the preceding block. This behavior can be disabled in the Java editor settings.
- Added an action to optimize the imports for the current script (Code → Optimize Imports)
- Added an action to show the available parameters for all overloaded methods of the method call at the caret (Code → Parameter Info)
- Added actions to move between problems in the current script (Code → Navigate to Next/Previous Highlighted Problem)
- The script editor now has "Extend Selection" and "Shrink Selection" actions in the "Edit" menu that select surrounding or contained blocks of code around the current caret position.
- The script editor now has a "Quick fix" action with a wide range of quick fixes for detected problems (Code → Quick Fix). If quick fixes are available at the caret, a floating popup will appear.
- The script editor now has a "Refactor" action with a wide range of refactorings for the currently selected element (Code → Refactor)
- The script editor now supports alternative keymaps for IntelliJ, Eclipse, and VS Code with appropriate versions for macOS. On first use, you choose a keymap and you can change it later on in the Keymap dialog.
- Added a sensitivity option for compiler variables to avoid writing values to the runtime config file for selected variables
- Platform-specific overriding for compiler variables
- When overriding a compiler variable, it is now possible to reference the base value with the syntax ${compiler:variableName}. This applies to both platform-specific and media-specific overrides.
- Added an option for compiler variables and pre-defined installer variables to convert file and path separators to the build or the target platform
- Added a "Read value from a JSON file" action
- Added a "Count occurrences in a JSON file" action
- Added a "Modify JSON files" action
- The "Copy files and directories" and "Move files and directories" actions now support symlinks. The "Symlink handling" property controls whether the content is copied or whether the same relative or absolute target should be used. The "On symlink creation failure" property offers different failure strategies during symlink handling.
- The "Create a symbolic link" action now also works on Windows. Execution on Windows is controlled by the "Execute on Windows" property and is disabled by default.
- Added a "Previous installations" search sequence entry type on the "General Settings → JRE Bundles → Search Sequence" step to be able to reuse the installed JRE in update installers. Only installations with the same application ID are considered.
- "Install files" action: The action now copies a JRE from a different installation directory if it was found by the "Previous installations" search sequence entry. This prevents problems that would otherwise occur when the previous installation is uninstalled.
- Update downloaders can now make decisions based on the JRE version of the update installer by inspecting com.install4j.api.update.UpdateDescriptorEntry#getJreMinVersion and #getJreMaxVersion.
- Support for dark mode in the initial progress dialog of Windows installers (Windows 11+)
- New language: Ukrainian
- Gradle, Maven, and Ant plugins can now auto-provision the appropriate version of install4j. Specifying the installDir parameter is still possible, but no longer required.
- The Gradle plugin is now compatible with the configuration cache if you define your own file inputs on the task by making method calls on the "inputs" property of the task.
- The "license" and "installDir" properties that were exclusively present in the install4j Gradle extension are now also available on the install4j Gradle tasks
- JDK providers now check once per day if the download URL of a JDK has changed and refresh the generated JDK bundle if necessary
- Windows installers now use "AppData\Local\install4j\t" instead of "AppData\Temp" as their temporary directory. This reduces conflicts with security policies and anti-virus tools.
- Updated and improved the "Open PDF viewer" action and the "PDF display" form component.
- Added support for variables with enum values in response files
- The "Ask user" failure strategy for actions and action groups now has separate sub-options for allowing "Retry", "Ignore" and "Quit" answers from the user
- "Checkbox", "Single radio button" and "Radio button group" form components: Added an "Also execute when screen is activated" property for the selection script for cases where the script manages the visibility or enablement of other form components
- Support multiple file selection in file choosers for generated icons and for properties that hold multiple files
- If a JDK cannot be downloaded during JRE bundle generation, the failing URL is now logged so you create exceptions in your firewall configuration
- "Multi-line label" and "Multi-line HTML label" form components: Added a "Make text selectable" property so that the user can select text with the mouse and copy it to the clipboard
- "Add a desktop link" action: On Linux with GNOME desktop environments, the created desktop links are now directly executable and do not show a dialog asking whether to trust the link.
- "Register Add/Remove item": The action can now be executed without elevation, so that it creates an entry for the current user only

API changes:
- Added ExternalFile#getOriginalName to retrieve the original name of an externally packaged file at runtime

Fixed:
- Script editor: Fixed "No Javadoc is available at the current caret position" for install4j API classes when Java 9+ was used
- On macOS, the keyboard shortcuts for navigating between installer screens have been changed to Ctrl+Option+Left Arrow and Ctrl+Option+Right Arrow, ensuring they work even when the focus is within text fields
- Undo and redo toolbar buttons and menu entries in text and code editors were always disabled
- The generated ICNS icons for macOS could be faulty if larger images were used
- the -manual command line switch for Windows installers did not always enable the "Locate" button
- Missing custom code during the instantiation of beans printed a misleading error message. Now the missing classes are mentioned in the error message.
- "Load a response file" action: Comments in the response file were not preserved if the "Register variables for response file" property was selected
- Bean names are no longer written to the runtime config, and only bean IDs are annotated into stack traces.
- Concurrent executions of the install4j compiler could corrupt downloaded JDK bundles
- Adoptium JRE installations were not detected on Windows
- After disabling a bean with customizer tabs like the "Installation type" screen and enabling it again, only the properties were shown
- "Installation type" screen: If the selected installation type is user-configurable and the user does not change the installation type in an upgrade installer, the selected components are not reset to the default set of the installation type anymore
- SWT/QT launchers on macOS now only support launching installer applications in a new process to avoid a deadlock.
- Formatted text field form components: Users could not delete all characters if "Prevent empty user input" was not selected
- The main class selector in the "Java invocation" step of the launcher wizard did not add the module name if the main class was from a directory module path entry
- The keyboard shortcut for the variable dropdown in text fields is now Command+Alt+V on macOS to avoid printing a character