私の根本的な問題は、コントローラーと Freemarker ビューに対して「spring-test」ベースのテストを実行するときに、すべての taglibs を WEB-INF/lib フォルダー内に配置する必要があることです。そうしないと、freemarker がテスト中にそれらを見つけられません。次のmaven構成でこの問題を解決しました。実際には、テストを実行する前に taglibs jar を src/main/webapp/WEB-INF/lib フォルダーにコピーします。IDE でこのテストを実行しても問題は同じであるため、このフォルダーをクリアしたくありません。
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.3</version>
<executions>
<!-- Freemaarker requires that all taglibs should reside in WEB-INF/lib folder -->
<execution>
<id>tests</id>
<phase>test-compile</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<outputDirectory>${basedir}/src/main/webapp/WEB-INF/lib/</outputDirectory>
<artifactItems>
<artifactItem>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>${spring.security.version}</version>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
現在、プロジェクトをgradleに移行しています。どうすればgradleで同じことを達成できますか?