A task defined as: <jar destfile="foo.jar" files="${obj}/com/acme/**/*.class"> <service type="java.nio.charset.spi.CharsetProvider" provider="com.acme.charset.PUACharset"/> </jar> places the file "java.nio.charset.spi.CharsetProvider" in the directory "META-INF/service" in the jar file, but the jar service provider framework specifies the directory as META-INF/services (note the 's' at the end). See http://java.sun.com/j2se/1.5.0/docs/guide/jar/jar.html#Service%20Provider for the documentation there.
Thanks for the report, this has already been fixed and will be in ant 1.7.1 *** This bug has been marked as a duplicate of bug 41201 ***