You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by da...@apache.org on 2017/04/20 15:10:19 UTC
[2/3] camel git commit: Close GroovyClassLoader
Close GroovyClassLoader
it avoids to have files that can't be deleted on Windows
Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/39376f59
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/39376f59
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/39376f59
Branch: refs/heads/master
Commit: 39376f59d04ce35e1ca290ab14e3412a7030d2d1
Parents: 6eb2abe
Author: Aurelien Pupier <ap...@redhat.com>
Authored: Thu Apr 20 14:06:20 2017 +0200
Committer: Claus Ibsen <da...@apache.org>
Committed: Thu Apr 20 17:07:31 2017 +0200
----------------------------------------------------------------------
.../maven/DefaultMavenArtifactProvider.java | 41 ++++++++++----------
1 file changed, 21 insertions(+), 20 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/camel/blob/39376f59/platforms/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/DefaultMavenArtifactProvider.java
----------------------------------------------------------------------
diff --git a/platforms/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/DefaultMavenArtifactProvider.java b/platforms/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/DefaultMavenArtifactProvider.java
index 99d0a47..1a7f3cb 100644
--- a/platforms/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/DefaultMavenArtifactProvider.java
+++ b/platforms/camel-catalog-maven/src/main/java/org/apache/camel/catalog/maven/DefaultMavenArtifactProvider.java
@@ -73,26 +73,27 @@ public class DefaultMavenArtifactProvider implements MavenArtifactProvider {
Grape.setEnableAutoDownload(true);
- final ClassLoader classLoader = new GroovyClassLoader();
-
- Map<String, Object> param = new HashMap<>();
- param.put("classLoader", classLoader);
- param.put("group", groupId);
- param.put("module", artifactId);
- param.put("version", version);
- // no need to download transitive dependencies as we only need to check the component or connector itself
- param.put("validate", false);
- param.put("transitive", false);
-
- LOG.debug("Downloading {}:{}:{}", groupId, artifactId, version);
- Grape.grab(param);
-
- // the classloader can load content from the downloaded JAR
- if (camelCatalog != null) {
- scanCamelComponents(camelCatalog, classLoader, names);
- }
- if (camelConnectorCatalog != null) {
- scanCamelConnectors(camelConnectorCatalog, classLoader, groupId, artifactId, version, names);
+ try (final GroovyClassLoader classLoader = new GroovyClassLoader()){
+
+ Map<String, Object> param = new HashMap<>();
+ param.put("classLoader", classLoader);
+ param.put("group", groupId);
+ param.put("module", artifactId);
+ param.put("version", version);
+ // no need to download transitive dependencies as we only need to check the component or connector itself
+ param.put("validate", false);
+ param.put("transitive", false);
+
+ LOG.debug("Downloading {}:{}:{}", groupId, artifactId, version);
+ Grape.grab(param);
+
+ // the classloader can load content from the downloaded JAR
+ if (camelCatalog != null) {
+ scanCamelComponents(camelCatalog, classLoader, names);
+ }
+ if (camelConnectorCatalog != null) {
+ scanCamelConnectors(camelConnectorCatalog, classLoader, groupId, artifactId, version, names);
+ }
}
} catch (Exception e) {