[ 
https://issues.apache.org/jira/browse/KAFKA-6914?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16509378#comment-16509378
 ] 

Frank Lyaruu commented on KAFKA-6914:
-------------------------------------

I have a similar issue (not with Spring but by embedding it into an OSGi 
bundle).

My specific problem is that the DelegatingClassLoader does not resolve using 
its own classloader. Plugins.java:61 creates a DelegatingClassLoader, but it 
uses the system classloader as a parent, which won't resolve anything in my 
case.

If I replace the ClassLoader.getSystemClassLoader() by 

DelegatingClassLoader.class.getClassLoader()

in DelegatingClassLoader.java:98 it works for me.

Isn't that a more sensible fallback classloader than the system classloader? Or 
is there an intention I'm not aware of?

 

> Kafka Connect - Plugins class should have a constructor that can take in 
> parent ClassLoader
> -------------------------------------------------------------------------------------------
>
>                 Key: KAFKA-6914
>                 URL: https://issues.apache.org/jira/browse/KAFKA-6914
>             Project: Kafka
>          Issue Type: Improvement
>          Components: KafkaConnect
>            Reporter: Sriram KS
>            Priority: Minor
>             Fix For: 1.1.1
>
>
> Currently Plugins class has a single constructor that takes in map of props.
> Please make Plugin class to have a constructor that takes in a classLoader as 
> well and use it to set DelegationClassLoader's parent classLoader.
> Reason:
> This will be useful if i am already having a managed class Loader environment 
> like a Spring boot app which resolves my class dependencies using my 
> maven/gradle dependency management.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to