javac will crash if given a badly formed service provider file for annotation processors.
To recreate, create a junk file META-INF/services/javax.annotation.processing.Processor, put it on the processor path, and compile any file.
gzilla[sp]% /tl/jdk/1.6.0/bin/javac -processorpath classes -XprintRounds Foo.java
An exception has occurred in the compiler (1.6.0-rc). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you.
java.util.ServiceConfigurationError: javax.annotation.processing.Processor: file:/home/jjg/tmp/sp/classes/META-INF/services/javax.annotation.processing.Processor:1: Illegal configuration-file syntax
at java.util.Service.fail(Service.java:214)
at java.util.Service.fail(Service.java:220)
at java.util.Service.parseLine(Service.java:240)
at java.util.Service.parse(Service.java:282)
at java.util.Service.access$200(Service.java:161)
at java.util.Service$LazyIterator.hasNext(Service.java:332)
at java.util.Service$1.hasNext(Service.java:415)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.hasNext(JavacProcessingEnvironment.java:337)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.atLeastOneProcessor(JavacProcessingEnvironment.java:221)
at com.sun.tools.javac.main.JavaCompiler.initProcessAnnotations(JavaCompiler.java:770)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:625)
at com.sun.tools.javac.main.Main.compile(Main.java:761)
at com.sun.tools.javac.main.Main.compile(Main.java:686)
at com.sun.tools.javac.main.Main.compile(Main.java:675)
at com.sun.tools.javac.Main.compile(Main.java:70)
at com.sun.tools.javac.Main.main(Main.java:55)
gzilla[sp]%
To recreate, create a junk file META-INF/services/javax.annotation.processing.Processor, put it on the processor path, and compile any file.
gzilla[sp]% /tl/jdk/1.6.0/bin/javac -processorpath classes -XprintRounds Foo.java
An exception has occurred in the compiler (1.6.0-rc). Please file a bug at the Java Developer Connection (http://java.sun.com/webapps/bugreport) after checking the Bug Parade for duplicates. Include your program and the following diagnostic in your report. Thank you.
java.util.ServiceConfigurationError: javax.annotation.processing.Processor: file:/home/jjg/tmp/sp/classes/META-INF/services/javax.annotation.processing.Processor:1: Illegal configuration-file syntax
at java.util.Service.fail(Service.java:214)
at java.util.Service.fail(Service.java:220)
at java.util.Service.parseLine(Service.java:240)
at java.util.Service.parse(Service.java:282)
at java.util.Service.access$200(Service.java:161)
at java.util.Service$LazyIterator.hasNext(Service.java:332)
at java.util.Service$1.hasNext(Service.java:415)
at com.sun.tools.javac.processing.JavacProcessingEnvironment$DiscoveredProcessors$ProcessorStateIterator.hasNext(JavacProcessingEnvironment.java:337)
at com.sun.tools.javac.processing.JavacProcessingEnvironment.atLeastOneProcessor(JavacProcessingEnvironment.java:221)
at com.sun.tools.javac.main.JavaCompiler.initProcessAnnotations(JavaCompiler.java:770)
at com.sun.tools.javac.main.JavaCompiler.compile(JavaCompiler.java:625)
at com.sun.tools.javac.main.Main.compile(Main.java:761)
at com.sun.tools.javac.main.Main.compile(Main.java:686)
at com.sun.tools.javac.main.Main.compile(Main.java:675)
at com.sun.tools.javac.Main.compile(Main.java:70)
at com.sun.tools.javac.Main.main(Main.java:55)
gzilla[sp]%