Originally, the Edgent/Quarks repo had the actual dependent ext jars as part of 
it and the bin release bundle copied them from there.  Kafka was a pretty large 
collection of things, many of which were completely unneeded for our use due to 
the way it was packaged (e.g., its noms pulled in a CLI arg handler, junit, 
...).  Hence the Edgent repo only included the actual needed jars and their 
needed deps.

When we went to gradle we retained that logical behavior.  The connector’s 
build.gradle describes the exact jars required, using the “@jar” dependency 
syntax to exclude transitive deps.  There was no expectation/requirement of 
“provided” on the part of the Edgent consumer.

So that’s the history.  If possible/practical, for now I think it best to 
retain that behavior across the mvn conversion.  Make sense?

— Dale

> On Jul 13, 2017, at 2:48 AM, Christofer Dutz <christofer.d...@c-ware.de> 
> wrote:
> 
> Hi Dale,
> 
> I just tested your script and it worked perfectly :-)
> 
> Regarding your observations:
> - You mentioned in another post, that I should exclude any transitive 
> dependency of Kafka … The only valid reason I could see to need this, if 
> using Edgent in an environment in which Kafka is provided by other means. The 
> Maven way to handle such a situation is to mark that dependency “provided” in 
> which case it is used during compilation, but is excluded from being pulled 
> in automatically … like the servlet-api jars which usually are provided by 
> every servlet container.


Reply via email to