I'm not sure why this Precondition was put here.  But I'll take a guess.  Originally, this code added all of the jars in the directories containing the kiji-schema and kiji-mapreduce jars, and then only the kiji-chopsticks jar (and not all jars in the kiji-chopsticks directory).  Since that jar was being added specifically, this precondition was probably put in to ensure that it was actually a jar being added.

I modified this code to instead add all of the jars in the directory containing the chopsticks jar. This is because I anticipate packaging chopsticks with a "lib" directory that will contain that jar + all chopsticks dependencies (much as we do with our other projects). So now the chopsticks jar isn't explicitly called out on its own, which makes the precondition in this spot seem a bit off.

Perhaps I should move a precondition checking that the discovered file is a jar to the findJarForClass method I added, and remove the precondition from this location? Also, I'm not sure how necessary this precondition really is.  I'm not sure under what circumstances you wouldn't get a jar file returned (maybe if you were dealing with an exploded distribution I suppose).