Fork me on GitHub

SpotBugs Bug Detector Report

The following document contains the results of SpotBugs

SpotBugs Version is 4.8.6

Threshold is medium

Effort is default

Summary

Classes Bugs Errors Missing Classes
46 42 0 0

Files

Class Bugs
org.codehaus.gmavenplus.groovyworkarounds.DotGroovyFile 3
org.codehaus.gmavenplus.model.GroovyCompileConfiguration 4
org.codehaus.gmavenplus.model.GroovyDocConfiguration 15
org.codehaus.gmavenplus.model.GroovyStubConfiguration 4
org.codehaus.gmavenplus.model.internal.Version 2
org.codehaus.gmavenplus.mojo.AbstractGenerateStubsMojo 1
org.codehaus.gmavenplus.mojo.AbstractGroovyDocMojo 3
org.codehaus.gmavenplus.mojo.AbstractGroovyMojo 1
org.codehaus.gmavenplus.mojo.ConsoleMojo 1
org.codehaus.gmavenplus.mojo.ExecuteMojo 2
org.codehaus.gmavenplus.mojo.ShellMojo 1
org.codehaus.gmavenplus.util.ClassWrangler 4
org.codehaus.gmavenplus.util.NoExitSecurityManager 1

org.codehaus.gmavenplus.groovyworkarounds.DotGroovyFile

Bug Category Details Line Priority
org.codehaus.gmavenplus.groovyworkarounds.DotGroovyFile.getScriptExtensions() may expose internal representation by returning DotGroovyFile.scriptExtensions MALICIOUS_CODE EI_EXPOSE_REP 110 Medium
org.codehaus.gmavenplus.groovyworkarounds.DotGroovyFile.setScriptExtensions(Set) may expose internal representation by storing an externally mutable object into DotGroovyFile.scriptExtensions MALICIOUS_CODE EI_EXPOSE_REP2 120 Medium
org.codehaus.gmavenplus.groovyworkarounds.DotGroovyFile doesn't override java.io.File.equals(Object) STYLE EQ_DOESNT_OVERRIDE_EQUALS 1 Medium

org.codehaus.gmavenplus.model.GroovyCompileConfiguration

Bug Category Details Line Priority
org.codehaus.gmavenplus.model.GroovyCompileConfiguration.getClasspath() may expose internal representation by returning GroovyCompileConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP 61 Medium
org.codehaus.gmavenplus.model.GroovyCompileConfiguration.getSources() may expose internal representation by returning GroovyCompileConfiguration.sources MALICIOUS_CODE EI_EXPOSE_REP 57 Medium
new org.codehaus.gmavenplus.model.GroovyCompileConfiguration(Set, List, File) may expose internal representation by storing an externally mutable object into GroovyCompileConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP2 52 Medium
new org.codehaus.gmavenplus.model.GroovyCompileConfiguration(Set, List, File) may expose internal representation by storing an externally mutable object into GroovyCompileConfiguration.sources MALICIOUS_CODE EI_EXPOSE_REP2 51 Medium

org.codehaus.gmavenplus.model.GroovyDocConfiguration

Bug Category Details Line Priority
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getClasspath() may expose internal representation by returning GroovyDocConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP 70 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getDefaultClassTemplates() may expose internal representation by returning GroovyDocConfiguration.defaultClassTemplates MALICIOUS_CODE EI_EXPOSE_REP 110 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getDefaultDocTemplates() may expose internal representation by returning GroovyDocConfiguration.defaultDocTemplates MALICIOUS_CODE EI_EXPOSE_REP 94 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getDefaultPackageTemplates() may expose internal representation by returning GroovyDocConfiguration.defaultPackageTemplates MALICIOUS_CODE EI_EXPOSE_REP 102 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getDocProperties() may expose internal representation by returning GroovyDocConfiguration.docProperties MALICIOUS_CODE EI_EXPOSE_REP 118 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getLinks() may expose internal representation by returning GroovyDocConfiguration.links MALICIOUS_CODE EI_EXPOSE_REP 86 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.getSourceDirectories() may expose internal representation by returning GroovyDocConfiguration.sourceDirectories MALICIOUS_CODE EI_EXPOSE_REP 66 Medium
new org.codehaus.gmavenplus.model.GroovyDocConfiguration(FileSet[], List, File) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP2 61 Medium
new org.codehaus.gmavenplus.model.GroovyDocConfiguration(FileSet[], List, File) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.sourceDirectories MALICIOUS_CODE EI_EXPOSE_REP2 60 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.setDefaultClassTemplates(String[]) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.defaultClassTemplates MALICIOUS_CODE EI_EXPOSE_REP2 114 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.setDefaultDocTemplates(String[]) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.defaultDocTemplates MALICIOUS_CODE EI_EXPOSE_REP2 98 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.setDefaultPackageTemplates(String[]) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.defaultPackageTemplates MALICIOUS_CODE EI_EXPOSE_REP2 106 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.setDocProperties(Properties) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.docProperties MALICIOUS_CODE EI_EXPOSE_REP2 122 Medium
org.codehaus.gmavenplus.model.GroovyDocConfiguration.setLinks(List) may expose internal representation by storing an externally mutable object into GroovyDocConfiguration.links MALICIOUS_CODE EI_EXPOSE_REP2 90 Medium
Class org.codehaus.gmavenplus.model.GroovyDocConfiguration defines non-transient non-serializable instance field links BAD_PRACTICE SE_BAD_FIELD Not available High

org.codehaus.gmavenplus.model.GroovyStubConfiguration

Bug Category Details Line Priority
org.codehaus.gmavenplus.model.GroovyStubConfiguration.getClasspath() may expose internal representation by returning GroovyStubConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP 55 Medium
org.codehaus.gmavenplus.model.GroovyStubConfiguration.getStubSources() may expose internal representation by returning GroovyStubConfiguration.stubSources MALICIOUS_CODE EI_EXPOSE_REP 51 Medium
new org.codehaus.gmavenplus.model.GroovyStubConfiguration(Set, List, File) may expose internal representation by storing an externally mutable object into GroovyStubConfiguration.classpath MALICIOUS_CODE EI_EXPOSE_REP2 46 Medium
new org.codehaus.gmavenplus.model.GroovyStubConfiguration(Set, List, File) may expose internal representation by storing an externally mutable object into GroovyStubConfiguration.stubSources MALICIOUS_CODE EI_EXPOSE_REP2 45 Medium

org.codehaus.gmavenplus.model.internal.Version

Bug Category Details Line Priority
Exception thrown in class org.codehaus.gmavenplus.model.internal.Version at new org.codehaus.gmavenplus.model.internal.Version(int, int, int) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 82 Medium
Exception thrown in class org.codehaus.gmavenplus.model.internal.Version at new org.codehaus.gmavenplus.model.internal.Version(int, int, int, String) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 61 Medium

org.codehaus.gmavenplus.mojo.AbstractGenerateStubsMojo

Bug Category Details Line Priority
Field AbstractGenerateStubsMojo.session masks field in superclass org.codehaus.gmavenplus.mojo.AbstractGroovyMojo CORRECTNESS MF_CLASS_MASKS_FIELD Not available Medium

org.codehaus.gmavenplus.mojo.AbstractGroovyDocMojo

Bug Category Details Line Priority
Found reliance on default encoding in org.codehaus.gmavenplus.mojo.AbstractGroovyDocMojo.copyStylesheet(File): new java.io.InputStreamReader(InputStream) I18N DM_DEFAULT_ENCODING 456 High
Found reliance on default encoding in org.codehaus.gmavenplus.mojo.AbstractGroovyDocMojo.copyStylesheet(File): new java.io.OutputStreamWriter(OutputStream) I18N DM_DEFAULT_ENCODING 467 High
Field AbstractGroovyDocMojo.session masks field in superclass org.codehaus.gmavenplus.mojo.AbstractGroovyMojo CORRECTNESS MF_CLASS_MASKS_FIELD Not available Medium

org.codehaus.gmavenplus.mojo.AbstractGroovyMojo

Bug Category Details Line Priority
Exception is caught when Exception is not thrown in org.codehaus.gmavenplus.mojo.AbstractGroovyMojo.getJavaExecutable() STYLE REC_CATCH_EXCEPTION 283 Medium

org.codehaus.gmavenplus.mojo.ConsoleMojo

Bug Category Details Line Priority
org.codehaus.gmavenplus.mojo.ConsoleMojo.setupConsole(Class, Class) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 185 Medium

org.codehaus.gmavenplus.mojo.ExecuteMojo

Bug Category Details Line Priority
Found reliance on default encoding in org.codehaus.gmavenplus.mojo.ExecuteMojo.executeScriptFromUrl(Class, Object, String): new java.io.InputStreamReader(InputStream) I18N DM_DEFAULT_ENCODING 303 High
org.codehaus.gmavenplus.mojo.ExecuteMojo.setupShell(Class) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 223 Medium

org.codehaus.gmavenplus.mojo.ShellMojo

Bug Category Details Line Priority
org.codehaus.gmavenplus.mojo.ShellMojo.setupShell(Class, Class, Class, Class, Class) makes inefficient use of keySet iterator instead of entrySet iterator PERFORMANCE WMI_WRONG_MAP_ITERATOR 163 Medium

org.codehaus.gmavenplus.util.ClassWrangler

Bug Category Details Line Priority
Exception thrown in class org.codehaus.gmavenplus.util.ClassWrangler at new org.codehaus.gmavenplus.util.ClassWrangler(List, ClassLoader, Log) will leave the constructor. The object under construction remains partially initialized and may be vulnerable to Finalizer attacks. BAD_PRACTICE CT_CONSTRUCTOR_THROW 72 Medium
org.codehaus.gmavenplus.util.ClassWrangler.createNewClassLoader(List, ClassLoader) creates a java.net.URLClassLoader classloader, which should be performed within a doPrivileged block MALICIOUS_CODE DP_CREATE_CLASSLOADER_INSIDE_DO_PRIVILEGED 259 Medium
org.codehaus.gmavenplus.util.ClassWrangler.getClassLoader() may expose internal representation by returning ClassWrangler.classLoader MALICIOUS_CODE EI_EXPOSE_REP 241 Medium
Redundant nullcheck of groovyObjectClassPath, which is known to be non-null in org.codehaus.gmavenplus.util.ClassWrangler.getJarPath() STYLE RCN_REDUNDANT_NULLCHECK_OF_NONNULL_VALUE 291 Medium

org.codehaus.gmavenplus.util.NoExitSecurityManager

Bug Category Details Line Priority
The method 'org.codehaus.gmavenplus.util.NoExitSecurityManager.checkPermission(Permission)' performs security check by using 'SecurityManager.checkPermission(Permission)' method of Security Manager Class, but is overrideable. Declare the method final or private in order to resolve the issue. MALICIOUS_CODE VSC_VULNERABLE_SECURITY_CHECK_METHODS 57 Medium