You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by ja...@apache.org on 2026/07/17 08:46:53 UTC
(grails-core) 01/01: Enable CodeNarc empty catch checks
This is an automated email from the ASF dual-hosted git repository.
jamesfredley pushed a commit to branch build/empty-catch-codenarc
in repository https://gitbox.apache.org/repos/asf/grails-core.git
commit 75f02aaff8f018ffe3dc060ee81ed230e818d0c6
Author: James Fredley <ja...@users.noreply.github.com>
AuthorDate: Fri Jul 17 04:46:09 2026 -0400
Enable CodeNarc empty catch checks
Assisted-by: opencode:gpt-5.6-sol
---
.../codenarc/codenarc.groovy | 4 ++++
.../ui/command/GrailsApplicationContextCommandRunner.groovy | 2 +-
.../groovy/grails/ui/script/GrailsApplicationScriptRunner.groovy | 2 +-
.../grails/artefact/controller/support/ResponseRenderer.groovy | 2 +-
.../main/groovy/grails/boot/config/GrailsAutoConfiguration.groovy | 3 +--
.../main/groovy/grails/boot/config/tools/ClassPathScanner.groovy | 2 +-
.../grails/dev/commands/template/TemplateRendererImpl.groovy | 2 +-
.../support/PersistenceContextInterceptorExecutor.groovy | 2 +-
.../groovy/org/grails/core/exceptions/DefaultErrorsPrinter.groovy | 6 +++---
.../main/groovy/org/grails/plugins/support/WatchPattern.groovy | 2 +-
.../groovy/org/grails/gorm/graphql/GraphQLEntityHelper.groovy | 4 +++-
.../graphql/entity/property/impl/PersistentGraphQLProperty.groovy | 2 +-
.../property/manager/DefaultGraphQLDomainPropertyManager.groovy | 2 +-
.../grails/orm/hibernate/AbstractHibernateGormInstanceApi.groovy | 2 +-
.../connections/HibernateConnectionSourceSettings.groovy | 2 +-
.../org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy | 2 +-
.../groovy/org/grails/datastore/gorm/mongo/simple/EnumType.groovy | 2 +-
.../src/main/groovy/grails/databinding/SimpleDataBinder.groovy | 6 ++++--
.../org/grails/compiler/gorm/GormEntityTransformation.groovy | 2 +-
.../datastore/gorm/bootstrap/AbstractDatastoreInitializer.groovy | 2 +-
.../apache/grails/data/testing/tck/tests/DomainEventsSpec.groovy | 2 +-
.../grails/plugins/datasource/EmbeddedDatabaseShutdownHook.groovy | 2 +-
.../groovy/org/grails/datastore/mapping/reflect/AstUtils.groovy | 2 +-
.../org/grails/scaffolding/model/DomainModelServiceImpl.groovy | 2 +-
.../main/groovy/org/grails/gsp/ModelRecordingGroovyPage.groovy | 2 +-
.../main/groovy/org/grails/plugins/web/taglib/FormTagLib.groovy | 2 +-
.../plugins/web/rest/plugin/RestResponderGrailsPlugin.groovy | 2 +-
grails-shell-cli/src/main/groovy/org/grails/cli/GrailsCli.groovy | 8 ++++----
.../main/groovy/org/grails/cli/gradle/GradleAsyncInvoker.groovy | 2 +-
.../org/grails/cli/gradle/cache/CachedGradleOperation.groovy | 2 +-
.../grails/cli/interactive/completers/ClassNameCompleter.groovy | 2 +-
.../main/groovy/org/grails/cli/profile/ProfileRepoConfig.groovy | 2 +-
.../org/grails/cli/profile/commands/CreateAppCommand.groovy | 2 +-
.../grails/cli/profile/commands/DefaultMultiStepCommand.groovy | 2 +-
.../cli/profile/commands/templates/TemplateRendererImpl.groovy | 2 +-
.../main/groovy/grails/testing/services/ServiceUnitTest.groovy | 2 +-
.../injection/testing/IntegrationTestAstTransformation.groovy | 2 +-
.../src/main/groovy/org/grails/testing/GrailsUnitTest.groovy | 4 ++--
.../org/grails/testing/spock/WebSetupSpecInterceptor.groovy | 2 +-
.../grails/views/resolve/GenericGroovyTemplateResolver.groovy | 2 +-
.../main/groovy/grails/web/databinding/GrailsWebDataBinder.groovy | 4 ++--
.../groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy | 4 +++-
42 files changed, 59 insertions(+), 50 deletions(-)
diff --git a/build-logic/plugins/src/main/resources/META-INF/org.apache.grails.buildsrc.grails-code-style/codenarc/codenarc.groovy b/build-logic/plugins/src/main/resources/META-INF/org.apache.grails.buildsrc.grails-code-style/codenarc/codenarc.groovy
index 80880ac32d..42075d180d 100644
--- a/build-logic/plugins/src/main/resources/META-INF/org.apache.grails.buildsrc.grails-code-style/codenarc/codenarc.groovy
+++ b/build-logic/plugins/src/main/resources/META-INF/org.apache.grails.buildsrc.grails-code-style/codenarc/codenarc.groovy
@@ -26,6 +26,10 @@ ruleset {
}
ClosureStatementOnOpeningLineOfMultipleLineClosure
ConsecutiveBlankLines
+ EmptyCatchBlock {
+ ignoreRegex = 'ignore|ignored'
+ priority = 3
+ }
FileEndsWithoutNewline
NoTabCharacter
DuplicateImport
diff --git a/grails-console/src/main/groovy/grails/ui/command/GrailsApplicationContextCommandRunner.groovy b/grails-console/src/main/groovy/grails/ui/command/GrailsApplicationContextCommandRunner.groovy
index bc292a074d..30b9f69e6b 100644
--- a/grails-console/src/main/groovy/grails/ui/command/GrailsApplicationContextCommandRunner.groovy
+++ b/grails-console/src/main/groovy/grails/ui/command/GrailsApplicationContextCommandRunner.groovy
@@ -85,7 +85,7 @@ class GrailsApplicationContextCommandRunner extends DevelopmentGrailsApplication
finally {
try {
ctx?.close()
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-console/src/main/groovy/grails/ui/script/GrailsApplicationScriptRunner.groovy b/grails-console/src/main/groovy/grails/ui/script/GrailsApplicationScriptRunner.groovy
index 8363d37589..3cf734b455 100644
--- a/grails-console/src/main/groovy/grails/ui/script/GrailsApplicationScriptRunner.groovy
+++ b/grails-console/src/main/groovy/grails/ui/script/GrailsApplicationScriptRunner.groovy
@@ -99,7 +99,7 @@ class GrailsApplicationScriptRunner extends DevelopmentGrailsApplication {
i.destroy()
}
ctx?.close()
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-controllers/src/main/groovy/grails/artefact/controller/support/ResponseRenderer.groovy b/grails-controllers/src/main/groovy/grails/artefact/controller/support/ResponseRenderer.groovy
index 8ef0a3576e..e014c75997 100644
--- a/grails-controllers/src/main/groovy/grails/artefact/controller/support/ResponseRenderer.groovy
+++ b/grails-controllers/src/main/groovy/grails/artefact/controller/support/ResponseRenderer.groovy
@@ -420,7 +420,7 @@ trait ResponseRenderer extends WebAttributes {
if (input) {
try {
((InputStream) input).close()
- } catch (IOException e) {
+ } catch (IOException ignored) {
// ignore
}
}
diff --git a/grails-core/src/main/groovy/grails/boot/config/GrailsAutoConfiguration.groovy b/grails-core/src/main/groovy/grails/boot/config/GrailsAutoConfiguration.groovy
index 91190446d3..1264706254 100644
--- a/grails-core/src/main/groovy/grails/boot/config/GrailsAutoConfiguration.groovy
+++ b/grails-core/src/main/groovy/grails/boot/config/GrailsAutoConfiguration.groovy
@@ -60,7 +60,7 @@ class GrailsAutoConfiguration implements GrailsApplicationClass, ApplicationCont
list.add(GroovyAwareInfrastructureAdvisorAutoProxyCreator)
list.add(GroovyAwareAspectJAwareAdvisorAutoProxyCreator)
}
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
@@ -151,4 +151,3 @@ class GrailsAutoConfiguration implements GrailsApplicationClass, ApplicationCont
}
}
-
diff --git a/grails-core/src/main/groovy/grails/boot/config/tools/ClassPathScanner.groovy b/grails-core/src/main/groovy/grails/boot/config/tools/ClassPathScanner.groovy
index c04af0f3e0..1d4dff31ac 100644
--- a/grails-core/src/main/groovy/grails/boot/config/tools/ClassPathScanner.groovy
+++ b/grails-core/src/main/groovy/grails/boot/config/tools/ClassPathScanner.groovy
@@ -244,7 +244,7 @@ class ClassPathScanner {
URL withoutBang = new URL("${urlStr.substring(0, urlStr.length() - 2)}/")
addURL(withoutBang)
- } catch (MalformedURLException e) {
+ } catch (MalformedURLException ignored) {
// ignore, running as a WAR
}
}
diff --git a/grails-core/src/main/groovy/grails/dev/commands/template/TemplateRendererImpl.groovy b/grails-core/src/main/groovy/grails/dev/commands/template/TemplateRendererImpl.groovy
index c3b3f1a0a8..47c8f4dc3b 100644
--- a/grails-core/src/main/groovy/grails/dev/commands/template/TemplateRendererImpl.groovy
+++ b/grails-core/src/main/groovy/grails/dev/commands/template/TemplateRendererImpl.groovy
@@ -176,7 +176,7 @@ class TemplateRendererImpl implements TemplateRenderer {
} finally {
try {
reader.close()
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-core/src/main/groovy/grails/persistence/support/PersistenceContextInterceptorExecutor.groovy b/grails-core/src/main/groovy/grails/persistence/support/PersistenceContextInterceptorExecutor.groovy
index 9a0421eae6..3257e6aede 100644
--- a/grails-core/src/main/groovy/grails/persistence/support/PersistenceContextInterceptorExecutor.groovy
+++ b/grails-core/src/main/groovy/grails/persistence/support/PersistenceContextInterceptorExecutor.groovy
@@ -70,7 +70,7 @@ class PersistenceContextInterceptorExecutor {
for (PersistenceContextInterceptor i in interceptors) {
try {
i.destroy()
- } catch (e) {
+ } catch (ignored) {
// ignore exception
}
}
diff --git a/grails-core/src/main/groovy/org/grails/core/exceptions/DefaultErrorsPrinter.groovy b/grails-core/src/main/groovy/org/grails/core/exceptions/DefaultErrorsPrinter.groovy
index ccbae3399e..cb4ed27694 100644
--- a/grails-core/src/main/groovy/org/grails/core/exceptions/DefaultErrorsPrinter.groovy
+++ b/grails-core/src/main/groovy/org/grails/core/exceptions/DefaultErrorsPrinter.groovy
@@ -125,13 +125,13 @@ class DefaultErrorsPrinter extends DefaultStackTracePrinter implements CodeSnipp
}
}
}
- catch (e) {
+ catch (ignored) {
// ignore
}
finally {
try {
input?.close()
- } catch (e) {
+ } catch (ignored) {
// ignore
}
pw.print(formatCodeSnippetEnd(res, lineNumber))
@@ -164,7 +164,7 @@ class DefaultErrorsPrinter extends DefaultStackTracePrinter implements CodeSnipp
break
}
}
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-core/src/main/groovy/org/grails/plugins/support/WatchPattern.groovy b/grails-core/src/main/groovy/org/grails/plugins/support/WatchPattern.groovy
index 1673bed636..315092aecc 100644
--- a/grails-core/src/main/groovy/org/grails/plugins/support/WatchPattern.groovy
+++ b/grails-core/src/main/groovy/org/grails/plugins/support/WatchPattern.groovy
@@ -64,7 +64,7 @@ class WatchPattern {
def matchPath = /${directory.canonicalPath.replaceAll('\\\\', '/')}.+?$ext/
def absolutePath = new File(path).canonicalPath.replaceAll('\\\\', '/')
return absolutePath ==~ matchPath
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/GraphQLEntityHelper.groovy b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/GraphQLEntityHelper.groovy
index 3db86a1703..a2a2cce9ac 100644
--- a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/GraphQLEntityHelper.groovy
+++ b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/GraphQLEntityHelper.groovy
@@ -60,7 +60,9 @@ class GraphQLEntityHelper {
if (hibernateMapping.isAssignableFrom(mapping.class)) {
description = hibernateMapping.getMethod('getComment').invoke(mapping)
}
- } catch (ClassNotFoundException e) { }
+ } catch (ClassNotFoundException ignored) {
+ // intentional: Hibernate support is optional
+ }
}
}
descriptions.put(entity, description)
diff --git a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/impl/PersistentGraphQLProperty.groovy b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/impl/PersistentGraphQLProperty.groovy
index db60118ba1..6adfc3a5ae 100644
--- a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/impl/PersistentGraphQLProperty.groovy
+++ b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/impl/PersistentGraphQLProperty.groovy
@@ -134,7 +134,7 @@ class PersistentGraphQLProperty extends OrderedGraphQLProperty {
deprecationReason = Schema.DEFAULT_DEPRECATION_REASON
}
}
- } catch (NoSuchFieldException e) { }
+ } catch (NoSuchFieldException ignored) { }
if (mapping.deprecated && deprecationReason == null) {
deprecationReason = Schema.DEFAULT_DEPRECATION_REASON
diff --git a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/manager/DefaultGraphQLDomainPropertyManager.groovy b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/manager/DefaultGraphQLDomainPropertyManager.groovy
index 3e1dcd6d0d..f95ba39b3f 100644
--- a/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/manager/DefaultGraphQLDomainPropertyManager.groovy
+++ b/grails-data-graphql/core/src/main/groovy/org/grails/gorm/graphql/entity/property/manager/DefaultGraphQLDomainPropertyManager.groovy
@@ -49,7 +49,7 @@ class DefaultGraphQLDomainPropertyManager implements GraphQLDomainPropertyManage
static {
try {
derivedMethod = Property.getMethod('isDerived', (Class<?>[]) null)
- } catch (NoSuchMethodException | SecurityException e) { }
+ } catch (NoSuchMethodException | SecurityException ignored) { }
}
@Override
diff --git a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/AbstractHibernateGormInstanceApi.groovy b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/AbstractHibernateGormInstanceApi.groovy
index 3f3abea76b..745de02e70 100644
--- a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/AbstractHibernateGormInstanceApi.groovy
+++ b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/AbstractHibernateGormInstanceApi.groovy
@@ -337,7 +337,7 @@ abstract class AbstractHibernateGormInstanceApi<D> extends GormInstanceApi<D> {
}
}
}
- catch (InvalidPropertyException ipe) {
+ catch (InvalidPropertyException ignored) {
// property is not accessable
}
}
diff --git a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
index 0c9aab26a2..c73119fe77 100644
--- a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
+++ b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/connections/HibernateConnectionSourceSettings.groovy
@@ -256,7 +256,7 @@ class HibernateConnectionSourceSettings extends ConnectionSourceSettings {
AvailableSettings.getField('ACQUIRE_CONNECTIONS')
props.put('hibernate.connection.release_mode', 'ON_CLOSE')
}
- catch (NoSuchFieldException ex2) {
+ catch (NoSuchFieldException ignored) {
// on Hibernate 5.0.x or lower - no need to change the default there
}
}
diff --git a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy
index 43cd4a5add..9459874c5c 100644
--- a/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy
+++ b/grails-data-hibernate5/core/src/main/groovy/org/grails/orm/hibernate/support/HibernateRuntimeUtils.groovy
@@ -170,7 +170,7 @@ class HibernateRuntimeUtils {
} else {
value = conversionService.convert(value, targetType)
}
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-data-mongodb/core/src/main/groovy/org/grails/datastore/gorm/mongo/simple/EnumType.groovy b/grails-data-mongodb/core/src/main/groovy/org/grails/datastore/gorm/mongo/simple/EnumType.groovy
index af13893bed..51944cba72 100644
--- a/grails-data-mongodb/core/src/main/groovy/org/grails/datastore/gorm/mongo/simple/EnumType.groovy
+++ b/grails-data-mongodb/core/src/main/groovy/org/grails/datastore/gorm/mongo/simple/EnumType.groovy
@@ -98,7 +98,7 @@ class EnumType extends AbstractMappingAwareCustomTypeMarshaller<Object, Document
try {
Object values = type.getMethod('values').invoke(type)
return Array.get(values, value.intValue())
- } catch (Exception e) {
+ } catch (Exception ignored) {
// ignore
}
return value
diff --git a/grails-databinding-core/src/main/groovy/grails/databinding/SimpleDataBinder.groovy b/grails-databinding-core/src/main/groovy/grails/databinding/SimpleDataBinder.groovy
index 3f3ed13bae..e0049ed6be 100755
--- a/grails-databinding-core/src/main/groovy/grails/databinding/SimpleDataBinder.groovy
+++ b/grails-databinding-core/src/main/groovy/grails/databinding/SimpleDataBinder.groovy
@@ -605,7 +605,9 @@ class SimpleDataBinder implements DataBinder {
protected convertStringToEnum(Class<? extends Enum> enumClass, String value) {
try {
enumClass.valueOf(value)
- } catch (IllegalArgumentException iae) {}
+ } catch (IllegalArgumentException ignored) {
+ // intentional: an unmatched value cannot be converted to the enum
+ }
}
protected preprocessValue(propertyValue) {
@@ -781,7 +783,7 @@ class SimpleDataBinder implements DataBinder {
}
}
}
- } catch (Exception e) {
+ } catch (Exception ignored) {
}
initializer
}
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
index 6a38b25322..a4b617aaea 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/compiler/gorm/GormEntityTransformation.groovy
@@ -184,7 +184,7 @@ class GormEntityTransformation extends AbstractASTTransformation implements Comp
try {
def cl = Thread.currentThread().contextClassLoader
AstUtils.addAnnotationIfNecessary(classNode, (Class<? extends Annotation>) Class.forName('grails.persistence.Entity', true, cl))
- } catch (Throwable e2) {
+ } catch (Throwable ignored) {
// Only GORM classes on the classpath continue
}
}
diff --git a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializer.groovy b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializer.groovy
index 5655eebb7e..6c023cd26e 100644
--- a/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializer.groovy
+++ b/grails-datamapping-core/src/main/groovy/org/grails/datastore/gorm/bootstrap/AbstractDatastoreInitializer.groovy
@@ -207,7 +207,7 @@ abstract class AbstractDatastoreInitializer implements ResourceLoaderAware {
for (entityName in entityNames) {
try {
persistentClasses << classLoader.loadClass(entityName)
- } catch (ClassNotFoundException e) {
+ } catch (ClassNotFoundException ignored) {
// ignore
}
}
diff --git a/grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DomainEventsSpec.groovy b/grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DomainEventsSpec.groovy
index 171031b57b..1da4710e8c 100644
--- a/grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DomainEventsSpec.groovy
+++ b/grails-datamapping-tck/src/main/groovy/org/apache/grails/data/testing/tck/tests/DomainEventsSpec.groovy
@@ -66,7 +66,7 @@ class DomainEventsSpec extends GrailsDataTckSpec {
try {
p.save()
manager.session.flush()
- } catch (e) {
+ } catch (ignored) {
// ignore hibernate related flush errors
}
manager.session.clear()
diff --git a/grails-datasource/src/main/groovy/org/grails/plugins/datasource/EmbeddedDatabaseShutdownHook.groovy b/grails-datasource/src/main/groovy/org/grails/plugins/datasource/EmbeddedDatabaseShutdownHook.groovy
index 9ef179427a..7184511cba 100644
--- a/grails-datasource/src/main/groovy/org/grails/plugins/datasource/EmbeddedDatabaseShutdownHook.groovy
+++ b/grails-datasource/src/main/groovy/org/grails/plugins/datasource/EmbeddedDatabaseShutdownHook.groovy
@@ -118,7 +118,7 @@ class EmbeddedDatabaseShutdownHook implements SmartLifecycle, ApplicationContext
try {
Sql sql = new Sql(connection)
sql.executeUpdate('SHUTDOWN')
- } catch (e) {
+ } catch (ignored) {
// already closed, ignore
} finally {
try { connection?.close() } catch (ignored) {}
diff --git a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/reflect/AstUtils.groovy b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/reflect/AstUtils.groovy
index 1de1e7eb2e..dcfcf6ead2 100644
--- a/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/reflect/AstUtils.groovy
+++ b/grails-datastore-core/src/main/groovy/org/grails/datastore/mapping/reflect/AstUtils.groovy
@@ -438,7 +438,7 @@ class AstUtils {
if (isDomainClass(new File(filePath).toURI().toURL())) {
return true
}
- } catch (MalformedURLException e) {
+ } catch (MalformedURLException ignored) {
// ignore
}
}
diff --git a/grails-fields/src/main/groovy/org/grails/scaffolding/model/DomainModelServiceImpl.groovy b/grails-fields/src/main/groovy/org/grails/scaffolding/model/DomainModelServiceImpl.groovy
index bfe8173d4d..070c7e9b9a 100644
--- a/grails-fields/src/main/groovy/org/grails/scaffolding/model/DomainModelServiceImpl.groovy
+++ b/grails-fields/src/main/groovy/org/grails/scaffolding/model/DomainModelServiceImpl.groovy
@@ -56,7 +56,7 @@ class DomainModelServiceImpl implements DomainModelService {
static {
try {
derivedMethod = Property.getMethod('isDerived', (Class<?>[]) null)
- } catch (NoSuchMethodException | SecurityException e) {
+ } catch (NoSuchMethodException | SecurityException ignored) {
// no-op
}
}
diff --git a/grails-gsp/core/src/main/groovy/org/grails/gsp/ModelRecordingGroovyPage.groovy b/grails-gsp/core/src/main/groovy/org/grails/gsp/ModelRecordingGroovyPage.groovy
index e490e7d59e..908eec63a3 100644
--- a/grails-gsp/core/src/main/groovy/org/grails/gsp/ModelRecordingGroovyPage.groovy
+++ b/grails-gsp/core/src/main/groovy/org/grails/gsp/ModelRecordingGroovyPage.groovy
@@ -195,7 +195,7 @@ class ModelEntry {
if (defaultTypeClass.isAssignableFrom(fieldTypeClass)) {
cleanedFieldType = defaultType
}
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-gsp/plugin/src/main/groovy/org/grails/plugins/web/taglib/FormTagLib.groovy b/grails-gsp/plugin/src/main/groovy/org/grails/plugins/web/taglib/FormTagLib.groovy
index 34638b261f..149792c099 100644
--- a/grails-gsp/plugin/src/main/groovy/org/grails/plugins/web/taglib/FormTagLib.groovy
+++ b/grails-gsp/plugin/src/main/groovy/org/grails/plugins/web/taglib/FormTagLib.groovy
@@ -1199,7 +1199,7 @@ class FormTagLib implements ApplicationContextAware, InitializingBean, TagLibrar
value = conversionService.convert(value, keyClass)
selected = keyValue == value
}
- catch (e) {
+ catch (ignored) {
// ignore
}
}
diff --git a/grails-rest-transforms/src/main/groovy/org/grails/plugins/web/rest/plugin/RestResponderGrailsPlugin.groovy b/grails-rest-transforms/src/main/groovy/org/grails/plugins/web/rest/plugin/RestResponderGrailsPlugin.groovy
index 7cb2e665f3..c0ffd5efad 100644
--- a/grails-rest-transforms/src/main/groovy/org/grails/plugins/web/rest/plugin/RestResponderGrailsPlugin.groovy
+++ b/grails-rest-transforms/src/main/groovy/org/grails/plugins/web/rest/plugin/RestResponderGrailsPlugin.groovy
@@ -75,7 +75,7 @@ class RestResponderGrailsPlugin extends Plugin {
if (!app.getArtefact(ControllerArtefactHandler.TYPE, controllerClassName)) {
try {
app.addArtefact(ControllerArtefactHandler.TYPE, app.classLoader.loadClass(controllerClassName))
- } catch (ClassNotFoundException cnfe) {
+ } catch (ClassNotFoundException ignored) {
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/GrailsCli.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/GrailsCli.groovy
index 1d4ce96fc1..32af2027e6 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/GrailsCli.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/GrailsCli.groovy
@@ -108,11 +108,11 @@ class GrailsCli {
Thread.start {
currentExecutionContext?.cancel()
}.join(1000)
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
@@ -557,7 +557,7 @@ class GrailsCli {
try {
// add tools.jar
urls.add(new File("${System.getenv('JAVA_HOME')}/lib/tools.jar").toURI().toURL())
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
def profiles = (List<URL>) dependencyMap.get('profiles')
@@ -660,7 +660,7 @@ class GrailsCli {
keepRunning = false
try {
GradleAsyncInvoker.POOL.shutdownNow()
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/GradleAsyncInvoker.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/GradleAsyncInvoker.groovy
index f4b2e7b84a..012fada81e 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/GradleAsyncInvoker.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/GradleAsyncInvoker.groovy
@@ -42,7 +42,7 @@ class GradleAsyncInvoker {
POOL.shutdownNow()
}
}.join(1000)
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/cache/CachedGradleOperation.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/cache/CachedGradleOperation.groovy
index 6a1ba0d3b2..d8afcea279 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/cache/CachedGradleOperation.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/gradle/cache/CachedGradleOperation.groovy
@@ -94,7 +94,7 @@ abstract class CachedGradleOperation<T> implements Callable<T> {
depsFile.withPrintWriter { PrintWriter writer ->
writeToCache(writer, data)
}
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/interactive/completers/ClassNameCompleter.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/interactive/completers/ClassNameCompleter.groovy
index db1e1e4efc..a11ac6f7d4 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/interactive/completers/ClassNameCompleter.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/interactive/completers/ClassNameCompleter.groovy
@@ -91,7 +91,7 @@ class ClassNameCompleter extends StringsCompleter {
allStrings.addAll(strings)
}
setStrings(allStrings)
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
// ignore
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/ProfileRepoConfig.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/ProfileRepoConfig.groovy
index b51c2a1540..5a77138954 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/ProfileRepoConfig.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/ProfileRepoConfig.groovy
@@ -74,7 +74,7 @@ class ProfileRepoConfig {
if (uri.getScheme() != null) {
return repoUrl
}
- } catch (URISyntaxException e) {
+ } catch (URISyntaxException ignored) {
// Not a valid URI, fall through to file conversion
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/CreateAppCommand.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/CreateAppCommand.groovy
index be68b00263..5897fd1b9f 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/CreateAppCommand.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/CreateAppCommand.groovy
@@ -778,7 +778,7 @@ class CreateAppCommand extends ArgumentCompletingCommand implements ProfileRepos
private void deleteDirectory(File directory) {
try {
directory?.deleteDir()
- } catch (Throwable t) {
+ } catch (Throwable ignored) {
// Ignore error deleting temporal directory
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/DefaultMultiStepCommand.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/DefaultMultiStepCommand.groovy
index 30f5d06e49..c9a4155634 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/DefaultMultiStepCommand.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/DefaultMultiStepCommand.groovy
@@ -67,7 +67,7 @@ class DefaultMultiStepCommand extends MultiStepCommand {
if (completerClass) {
try {
this.description.completer = (Completer) Thread.currentThread().contextClassLoader.loadClass(completerClass.toString()).getDeclaredConstructor().newInstance()
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/templates/TemplateRendererImpl.groovy b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/templates/TemplateRendererImpl.groovy
index 4e8a03eedc..095baa6141 100644
--- a/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/templates/TemplateRendererImpl.groovy
+++ b/grails-shell-cli/src/main/groovy/org/grails/cli/profile/commands/templates/TemplateRendererImpl.groovy
@@ -199,7 +199,7 @@ class TemplateRendererImpl implements TemplateRenderer, ProfileRepositoryAware {
} finally {
try {
reader.close()
- } catch (e) {
+ } catch (ignored) {
// ignore
}
}
diff --git a/grails-testing-support-core/src/main/groovy/grails/testing/services/ServiceUnitTest.groovy b/grails-testing-support-core/src/main/groovy/grails/testing/services/ServiceUnitTest.groovy
index 917c730505..19dcac8477 100755
--- a/grails-testing-support-core/src/main/groovy/grails/testing/services/ServiceUnitTest.groovy
+++ b/grails-testing-support-core/src/main/groovy/grails/testing/services/ServiceUnitTest.groovy
@@ -41,7 +41,7 @@ trait ServiceUnitTest<T> extends ParameterizedGrailsUnitTest<T> {
if (!dataTestLoaded) {
try {
dataTest = ClassUtils.forName(DATATEST_CLASS)
- } catch (ClassNotFoundException e) {}
+ } catch (ClassNotFoundException ignored) {}
}
dataTestLoaded = true
}
diff --git a/grails-testing-support-core/src/main/groovy/org/grails/compiler/injection/testing/IntegrationTestAstTransformation.groovy b/grails-testing-support-core/src/main/groovy/org/grails/compiler/injection/testing/IntegrationTestAstTransformation.groovy
index 6034589837..cb75b84bd5 100644
--- a/grails-testing-support-core/src/main/groovy/org/grails/compiler/injection/testing/IntegrationTestAstTransformation.groovy
+++ b/grails-testing-support-core/src/main/groovy/org/grails/compiler/injection/testing/IntegrationTestAstTransformation.groovy
@@ -166,7 +166,7 @@ class IntegrationTestAstTransformation implements ASTTransformation, TransformWi
try {
servletApi = Class.forName('jakarta.servlet.ServletContext', false, getClass().classLoader)
}
- catch (Exception e) {
+ catch (Exception ignored) {
// ignore
}
diff --git a/grails-testing-support-core/src/main/groovy/org/grails/testing/GrailsUnitTest.groovy b/grails-testing-support-core/src/main/groovy/org/grails/testing/GrailsUnitTest.groovy
index 7eb236cf63..1b72ef247e 100644
--- a/grails-testing-support-core/src/main/groovy/org/grails/testing/GrailsUnitTest.groovy
+++ b/grails-testing-support-core/src/main/groovy/org/grails/testing/GrailsUnitTest.groovy
@@ -116,12 +116,12 @@ trait GrailsUnitTest {
defineBeans(config)
return
}
- } catch (NoSuchMethodException e) {}
+ } catch (NoSuchMethodException ignored) {}
try {
Method doWithSpringField = clazz.getMethod('getDoWithSpring')
defineBeans((Closure) doWithSpringField.invoke(plugin))
- } catch (NoSuchMethodException e) {}
+ } catch (NoSuchMethodException ignored) {}
}
Closure doWithSpring() {
diff --git a/grails-testing-support-web/src/main/groovy/org/grails/testing/spock/WebSetupSpecInterceptor.groovy b/grails-testing-support-web/src/main/groovy/org/grails/testing/spock/WebSetupSpecInterceptor.groovy
index cf886fa46f..aedf55f4ed 100644
--- a/grails-testing-support-web/src/main/groovy/org/grails/testing/spock/WebSetupSpecInterceptor.groovy
+++ b/grails-testing-support-web/src/main/groovy/org/grails/testing/spock/WebSetupSpecInterceptor.groovy
@@ -116,7 +116,7 @@ class WebSetupSpecInterceptor implements IMethodInterceptor {
try {
Class viewResolver = classLoader.loadClass('grails.plugin.json.view.mvc.JsonViewResolver')
jsonSmartViewResolver(viewResolver)
- } catch (ClassNotFoundException e) { }
+ } catch (ClassNotFoundException ignored) { }
localeResolver(SessionLocaleResolver)
multipartResolver(StandardServletMultipartResolver)
diff --git a/grails-views-core/src/main/groovy/grails/views/resolve/GenericGroovyTemplateResolver.groovy b/grails-views-core/src/main/groovy/grails/views/resolve/GenericGroovyTemplateResolver.groovy
index c990ea0a8f..74dcfe9c31 100644
--- a/grails-views-core/src/main/groovy/grails/views/resolve/GenericGroovyTemplateResolver.groovy
+++ b/grails-views-core/src/main/groovy/grails/views/resolve/GenericGroovyTemplateResolver.groovy
@@ -78,7 +78,7 @@ class GenericGroovyTemplateResolver implements TemplateResolver {
log.trace('Attempting to load class [{}] for template [{}]', className, path)
def cls = classLoader.loadClass(className)
return (Class<? extends Template>) cls
- } catch (Throwable e) {
+ } catch (Throwable ignored) {
}
return null
}
diff --git a/grails-web-databinding/src/main/groovy/grails/web/databinding/GrailsWebDataBinder.groovy b/grails-web-databinding/src/main/groovy/grails/web/databinding/GrailsWebDataBinder.groovy
index 841a33fd22..80a87452dd 100644
--- a/grails-web-databinding/src/main/groovy/grails/web/databinding/GrailsWebDataBinder.groovy
+++ b/grails-web-databinding/src/main/groovy/grails/web/databinding/GrailsWebDataBinder.groovy
@@ -265,7 +265,7 @@ class GrailsWebDataBinder extends SimpleDataBinder {
protected getPersistentInstance(Class<?> type, id) {
try {
InvokerHelper.invokeStaticMethod(type, 'get', id)
- } catch (Exception exc) {}
+ } catch (Exception ignored) {}
}
/**
@@ -731,7 +731,7 @@ class GrailsWebDataBinder extends SimpleDataBinder {
if (grailsApplication != null) {
try {
return grailsApplication.mappingContext.getPersistentEntity(clazz.name)
- } catch (GrailsConfigurationException e) {
+ } catch (GrailsConfigurationException ignored) {
//no-op
}
}
diff --git a/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy b/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
index cb161d4177..df8551abb5 100644
--- a/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
+++ b/grails-web-url-mappings/src/main/groovy/org/grails/web/mapping/DefaultLinkGenerator.groovy
@@ -438,7 +438,9 @@ class DefaultLinkGenerator implements LinkGenerator, PluginManagerAware {
if (str) {
absolute = Boolean.parseBoolean(str)
}
- } catch (e) {}
+ } catch (e) {
+ log.debug('Unable to parse absolute link attribute', e)
+ }
}
}
return absolute