Options for customizing Julia's analysis

The following is the list of all options that can be configured to customize the behavior of the Julia static analyzer. These options might have effect either on the extraction process or on the behavior of some checkers. While the default value provided for each of the following is enough to perform an analysis that yields good results, editing their values might improve the quality of the analysis.


Option Allow framework detection

Enables automatic framework detection

Enables automatic framework detection, allowing Julia to identify frameworks and optimize the analysis accordingly. A description of the frameworks automatically recognized by Julia is available in the documentation.


Name: allowFrameworkDetection
Type: boolean
Default value: true
Possible values: true, false

Option Enable assertions

Assume that assertions are turned on

Assume that assertion statements are executed, hence warnings should be reported about those statements and their effects on subsequent instructions must be taken into account.


Name: ea
Type: boolean
Default value: false
Possible values: true, false

Option Entry points

The entry points of the application

Specify the entry point of the application the analysis starts from.


Name: entryPoint
Type: enumeration
Default value: ALL_ENTRIES
Possible values:
  • ALL_ENTRIES: Assume that all public and protected methods and constructors are entry points
  • ALL_METHODS: Assume that all public, protected and private methods and constructors are entry points
  • LIBRARY: Assume that all public and protected methods and constructors are entry points, and assume that non-final classes might be redefined in the future
  • ONLY_EXPLICIT_ENTRIES: Only consider entry points marked as @EntryPoint
  • ONLY_STANDARD_ENTRIES: Only consider default entry points like main methods, event handlers of Swing and Android

Option Framework

Specify the framework of analysis

A framework specifies rules specific to the given programming context used for the application under analysis, such as the entry points for the analysis. The "java7" framework will work in most cases, but more specific frameworks might yield more precise results of analysis. The specification of the framework might also change the behavior of the checkers, since some checks might be sensible for some frameworks only.


Name: framework
Type: string
Default value: not set
Possible values:
  • androidAPI1: use the framework of analysis for Android API 1
  • androidAPI10: use the framework of analysis for Android API 10
  • androidAPI11: use the framework of analysis for Android API 11
  • androidAPI12: use the framework of analysis for Android API 12
  • androidAPI13: use the framework of analysis for Android API 13
  • androidAPI14: use the framework of analysis for Android API 14
  • androidAPI15: use the framework of analysis for Android API 15
  • androidAPI16: use the framework of analysis for Android API 16
  • androidAPI17: use the framework of analysis for Android API 17
  • androidAPI18: use the framework of analysis for Android API 18
  • androidAPI19: use the framework of analysis for Android API 19
  • androidAPI2: use the framework of analysis for Android API 2
  • androidAPI20: use the framework of analysis for Android API 20
  • androidAPI21: use the framework of analysis for Android API 21
  • androidAPI22: use the framework of analysis for Android API 22
  • androidAPI23: use the framework of analysis for Android API 23
  • androidAPI24: use the framework of analysis for Android API 24
  • androidAPI25: use the framework of analysis for Android API 25
  • androidAPI26: use the framework of analysis for Android API 26
  • androidAPI27: use the framework of analysis for Android API 27
  • androidAPI28: use the framework of analysis for Android API 28
  • androidAPI3: use the framework of analysis for Android API 3
  • androidAPI4: use the framework of analysis for Android API 4
  • androidAPI5: use the framework of analysis for Android API 5
  • androidAPI6: use the framework of analysis for Android API 6
  • androidAPI7: use the framework of analysis for Android API 7
  • androidAPI8: use the framework of analysis for Android API 8
  • androidAPI9: use the framework of analysis for Android API 9
  • dotnet: use the framework of analysis for .NET
  • java1: use the framework of analysis for Java 1.1
  • java10: use the framework of analysis for Java 1.10
  • java11: use the framework of analysis for Java 1.11
  • java2: use the framework of analysis for Java 1.2
  • java3: use the framework of analysis for Java 1.3
  • java4: use the framework of analysis for Java 1.4
  • java5: use the framework of analysis for Java 1.5
  • java6: use the framework of analysis for Java 1.6
  • java7: use the framework of analysis for Java 1.7
  • java8: use the framework of analysis for Java 1.8
  • java9: use the framework of analysis for Java 1.9

Option Mode of library processing

Processing mode for library classes

Allow the analyzer to discard the implementation of library methods and only uses the hierarchy of the library classes during the analysis. This decreases the precision of the analysis and might occasionally make it unsound, but reduces the time of analysis.


Name: libraryProcessingMode
Type: enumeration
Default value: TYPES
Possible values:
  • TYPES: ignore the code of the non-runtime libraries
  • TYPES_AND_CODE: include the code of all classes during analysis