Migration maven->gradle, type tld replacement

I tried to migrate some projects from maven to gradle with great performance improvements. But i still have some issues, the main blocker is, that i cannot find a replacement for maven type tld. e.g.

<dependency>
    <groupId>taglibs</groupId>
    <artifactId>c</artifactId>
    <type>tld</type>
</dependency>

When i use gradle init on the maven project, it adds:

compile 'taglibs:c:1.1.2' 
compile 'taglibs:fmt:1.1.2'
compile 'taglibs:fn:1.1.1'

But thats not working: WEB-INF/tld is missing.

I believe you’ll do

compile 'taglibs:c:1.1.2@tld' 

The Maven Docs are a little vague on what type=tld will actually do under the hood

type :
Corresponds to the chosen dependency type. This defaults to jar . While it usually represents the extension on the filename of the dependency, that is not always the case: a type can be mapped to a different extension and a classifier. The type often corresponds to the packaging used, though this is also not always the case. Some examples are jar , ejb-client and test-jar : see default artifact handlers for a list. New types can be defined by plugins that set extensions to true, so this is not a complete list.

Its been a long time since I’ve done any jsp development, but how are you declaring the taglibs in your web.xml and jsp’s? You should be able to access taglibs from jars on your classpath via web.xml

<taglib>
    <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/c.tld</taglib-location>
  </taglib>

And JSP

<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>