Tag library descriptor files have names that use the extension .tld, and the
extension indicates a tag library descriptor file. When deployed inside a JAR file,
the tag library descriptor files must be in the META-INF directory, or a subdirectory
of it. When deployed directly into a web application, the tag library descriptor
files must always be in the WEB-INF directory, or some subdirectory of it. TLD
files should not be placed in /WEB-INF/classes or /WEB-INF/lib.
IMO bundling tag libraries into a jar file is the best approach.
So put the tld in the META-INF directory of the jar.