This extension integrates the static analyzer Facebook Infer into IDEs and editors with the MagpieBridge framework.
InferIDE executes infer in the background and displays analysis results directly in IDEs which support the Language Server Protocol.
Currently, only analyzing Java Projects is supported.
If you want to use your own image you can supply the image using the command line option -i
if the image is not yet installed on your system, docker will pull it on the first run
otherwise you can install it beforehand using docker pull jonasmanuel/inferdocker
Simply open a Java project and enjoy!
When is infer running?
These are two ways how infer can be triggered by InferIDE:
Fully automated (default): The default way is fully based on user interactions in the IDE. Infer will be triggered when the user opens a source file for the first time in a project. Moreover, InferIDE detects if the user is idle in the IDE (not typing for a given amout of time, e.g. 5 minutes) and triggers infer.
User-controlled: InferIDE displays a HTML page in your web browser which allows you configure commands for infer to run and a click button to trigger infer. Disable the setting auto will enable this mode.
Default build-in commands are :
infer run --reactive -- mvn clean compile (first run)
infer run --reactive -- mvn compile
infer run --reactive -- ./gradlew clean build (first run)