JProfiler Help

Installing JProfiler


Executable installers are provided for Windows and Linux/Unix that lead you step-by step through the installation. If a previous installation is detected, the installation is streamlined.

On macOS, JProfiler uses the standard installation procedure for UI applications: a DMG archive that you can mount in the Finder by double-clicking on it, then you can drag the JProfiler application bundle to the /Applications folder. That folder is visible as a symbolic link in the DMG itself.

On Linux/Unix, installers are not executable after download, so you have to prepend sh when executing them. The installer performs a command line installation if you pass the parameter -c. Completely unattended installations for Windows and Linux/Unix are performed with the parameter -q. In that case, you can pass the additional argument -dir <directory> in order to choose the installation directory.

After you run an installer, it will save a file .install4j/response.varfile that contains the entire user input. You can take that file and use it to automate unattended installations by passing the argument -varfile <path to response.varfile> on the command line.

To set licensing information for unattended installations, pass -Vjprofiler.licenseKey=<license key> -Vjprofiler.licenseName=<user name> and optionally -Vjprofiler.licenseCompany=<company name> as command line arguments. If you have a floating license, use FLOAT:<server name or IP address> instead of the license key.

Archives are also provided as ZIP files for Windows and as .tar.gz files for Linux. The command

tar xzvf filename.tar.gz

will extract a .tar.gz archive into a separate top-level directory. To start JProfiler, execute bin/jprofiler in the extracted directory. On Linux/Unix, the file jprofiler.desktop can be used to integrate the JProfiler executable into your window manager. For example, on Ubuntu you can drag the desktop file into the launcher side bar in order to create a permanent launcher item.

Distributing the profiling agent to remote machines

JProfiler has two parts: The desktop UI together with the command line utilities that operate on snapshots, on the one hand, and the profiling agent together with the command line utilities that control the profiled JVM, on the other hand. The installers and archives that you download from the website contain both parts.

For remote profiling, however, you only need the profiling agent to be installed on the remote side. While you can simply extract an archive with the JProfiler distribution on the remote machine, you may want to limit the number of required files, especially when automating a deployment. Also, the profiling agent is freely redistributable, so you can ship it with your application or install it on customer machines for trouble-shooting.

To get a minimal package with the profiling agent, the remote integration wizards shows you the download link for the appropriate agent archive as well as the download page with the agent archives for all supported platforms. In the JProfiler GUI, invoke Session→Integration Wizards→New Server/Remote Integration, select the "Remote" option and then proceed to the Remote installation directory step.

The URL for the HTML overview page for a particular JProfiler version is

https://www.ej-technologies.com/download/jprofiler/agent?version=14.0.2

The format of the download URLs for the single agent archives is

https://download.ej-technologies.com/jprofiler/jprofiler_agent_<platform>_14_0_2.<extension>

where platform corresponds to the agent directory name in the bin directory and extension is zip on Windows, .tgz on macOS and .tar.gz for Linux/Unix. For Linux, x86 and x64 are grouped together, so for Linux x64 the URL is

https://download.ej-technologies.com/jprofiler/jprofiler_agent_linux-x86_14_0_2.tar.gz

The agent archive contains the required native agent libraries together with the jpenable, jpdump andjpcontroller executables. The executables in the archive only require Java 6 as a minimum version, while the profiling agent works with Java 5 or higher.

The sub-directories that you see after extracting the agent archive on the remote machine are described below. They are a subset of a full JProfiler installation on the respective target platform.

top-level directory after extraction.install4jbin<platform-64><platform-32>libagent JAR file and helper executablesnative libraries for 64-bit JVMsnative libraries for 32-bit JVMssupport libraries for attach functionalityruntime for launchers

Supported platforms

Because JProfiler utilizes the native profiling interface of the JVM (JVMTI), its profiling agent is a native library.

JProfiler supports profiling on the following platforms:

OSArchitectureSupported JVMsVersions
Windows 11/10/8/7
Windows Server 2022/2019/2016/2012
x86
x64/AMD64
Hotspot (OpenJDK)
IBM/OpenJ9
1.5 - 21
1.5 - 21
macOS 10.12 - 14Intel, AppleHotspot (OpenJDK)
IBM/OpenJ9
1.8 - 21
1.8 - 21
Linuxx86
x64/AMD64
Hotspot (OpenJDK)
IBM/OpenJ9
1.5 - 21
1.5 - 21
LinuxPPC64LE Hotspot (OpenJDK)
IBM/OpenJ9
1.5 - 21
1.5 - 21
LinuxARMv7
ARMv8
Hotspot (OpenJDK)1.8 - 21
FreeBSD 13AMD64FreeBSD1.8 - 21
AIX 7.2 - 7.3PPC64IBM/OpenJ91.8 - 21

The JProfiler GUI frontend needs a Java 11 or a Java 17 VM to run. A Java 17 JRE is bundled with JProfiler for that purpose on Windows and macOS. The attach command line tools jpenable, jdump and jpcontroller only require a Java 6 VM.