...
Allowing unauthorized calls to System.exit()
may lead to denial of service.
Rule | Severity | Likelihood | Remediation Cost | Priority | Level |
---|---|---|---|---|---|
ERR09-J | Low | Unlikely | Medium | P2 | L3 |
Automated Detection
Tool | Version | Checker | Description | ||||||
---|---|---|---|---|---|---|---|---|---|
CodeSonar |
| PMD.J2EE.DoNotCallSystemExit FB.BAD_PRACTICE.DM_EXIT | Do not call System exit Method invokes System.exit(...) | ||||||
Coverity | 7.5 | DC.CODING_STYLE | Implemented | ||||||
Parasoft Jtest |
| CODSTA.BP.EXIT, SECURITY.EAB.JVM | Implemented | ||||||
SonarQube |
| S1147 |
Exit methods should not be called |
Related Guidelines
Android Implementation Details
On Android, System.exit()
should not be used because it will terminate the virtual machine abruptly, ignoring the activity life cycle, which may prevent proper garbage collection.
Bibliography
[API 2014] | Method |
Section 9.5, "The Finalize Method" | |
[ESA 2005] | Rule 78, Restrict the use of the |
Section 7.4, "JVM Shutdown" | |
Chapter 16, "Intercepting a Call to |
...
...