See CONTRIBUTING.md for info on working on PSI Probe and sending patches.
Please download latest probe.war from here
Please download latest psi-probe-web.war release from here
You can rename 'psi-probe-web.war' to the traditional 'probe.war' or other name as you see fit.
Please download latest psi-probe-web.war snapshots from here
You can rename 'psi-probe-web.war' to the traditional 'probe.war' or other name as you see fit.
Clone PSI Probe's git repository.
Note: If you plan to contribute to PSI Probe, you should create your own fork on GitHub first and clone that. Otherwise, follow these steps to build the latest version of PSI Probe for yourself.
Execute the following command:
git clone https://github.com/psi-probe/psi-probe
This will create directory called psi-probe
. Subsequent steps will refer to this as "your PSI Probe base directory."
Minimum JDK version required to build is JDK 11 and run is JDK 8.
**Download and install Maven 3.9.6 or better
You may download it from the Apache Maven website.
Run Maven.
Execute the following command from your PSI Probe base directory:
mvn package
This will create a deployable file at web/target/probe.war
.
Generally supported versions for third party tomcat providers align with their support but earlier versions may still work. It is advisable in every case to use only supported tomcat releases per specific vendor. Our support will only be against non CVE releases.
Tomcat 8.5 Series (Notice: We will drop support for tomcat 8.5 after tomcat officially archives it shortly after 3/31/2024 and we will complete a final release before that is done)
Tomcat 9.0 Series
Tomcat 10.0 Series (discontinued by tomcat / not released by psi probe yet)
Tomcat 10.1 Series (not released by psi probe yet - issues with hop from tomcat 10.0.27 to 10.1.x)
Tomcat 11.0 Series (pending)
PSI Probe uses deep reflection to access data. Take care your tomcat configuration considers this. You can do this by extending the JDK_JAVA_OPTIONS variable:
...
--add-opens=java.base/java.lang=ALL-UNNAMED
--add-opens=java.base/java.io=ALL-UNNAMED
--add-opens=java.base/java.util=ALL-UNNAMED
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
--add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
...