All Downloads are FREE. Search and download functionalities are using the official Maven repository.

resources.report.rules.pmd.DoNotThrowExceptionInFinally.html Maven / Gradle / Ivy

Go to download

Sanity4J was created to simplify running multiple static code analysis tools on the Java projects. It provides a single entry point to run all the selected tools and produce a consolidated report, which presents all findings in an easily accessible manner.

There is a newer version: 1.1.1
Show newest version


DoNotThrowExceptionInFinally


DoNotThrowExceptionInFinally

[ Throwing exception in a finally block is confusing. It may mask exception or a defect of the code, it also render code cleanup uninstable. Note: This is a PMD implementation of the Lint4j rule "A throw in a finally block"

This rule is defined by the following XPath expression:

			    
//FinallyStatement[descendant::ThrowStatement]
			          
			  

Example:

                
    		
				public class Foo 
				{
					public void bar()
					{
						try {
							// Here do some stuff
						}
						catch( Exception e) {
							// Handling the issue
						}
						finally 
						{
							// is this really a good idea ?
							throw new Exception();
						}
					}
				}
	    	
    	
            




© 2015 - 2024 Weber Informatics LLC | Privacy Policy