jdk8 javadoc tool issue - IllegalStateException: endPosTable already set
Neon Ngo
neon at nngo.net
Fri Mar 14 21:30:03 UTC 2014
Sorry for the delay in getting this test case.
I think the culprit might be a combo of my class (in default) package that
has an inner class.
Under Unix (e.g. Linux):
1. define JAVA_HOME system variable to point to JDK8
2. cd to extracted folder
3. run ./doit.sh (which just calls javadoc using full paths to current
working directory)
Here are the zip file contents (just in case the attachment gets blocked):
.
|-- doit.sh
`-- test
|-- InPackage.java
`-- NotInPackageWithNestedClass.java
=== BEGIN contents of test/InPackage.java ===
package test;
/** a class in a package */
public class InPackage {
/** the main method */
public static void main (String[] args) throws Exception {
System.out.println("test javadoc bug (class in a package)");
}
}
=== END contents of test/InPackage.java ===
=== BEGIN contents of test/NotInPackageWithNestedClass.java ===
import java.io.*;
/**
This class is in the default package (aka not in any package).
*/
public final class NotInPackageWithNestedClass {
public static void main (String[] args) throws Throwable {
}
//////////////////////////////////////////////////////////////////////////////
// NESTED CLASS
//////////////////////////////////////////////////////////////////////////////
private static final class JarFilter implements FilenameFilter {
public boolean accept(java.io.File dir, String name) {
return name.endsWith(".jar");
}
} // end class JarFilter
} // end class NotInPackage
=== END contents of test/NotInPackageWithNestedClass.java ===
=== BEGIN contents of doit.sh ===
#!/bin/sh
outputdir=${PWD}/outputdir
cp1=${PWD}/test
cp2=${PWD}
JAVADOC_TOOL=${JAVA_HOME}/bin/javadoc
# shows JDK8's javadoc tool issue with two classes in test directory:
NotInPackage.java and InPackage.java)
${JAVADOC_TOOL} -classpath ${cp1}:${cp2} -d ${outputdir}
${PWD}/test/NotInPackageWithNestedClass.java test
=== END contents of doit.sh ===
Regards,
Neon
On Mon, Feb 3, 2014 at 5:50 PM, Kumar Srinivasan <
kumar.x.srinivasan at oracle.com> wrote:
> Hi Neon,
>
> I spent some time trying to reproduce the problem, but could not.
> Can you provide me with a simple reproducer ?
>
> Thanks
> Kumar
>
>
> On 1/24/2014 7:31 AM, Neon Ngo wrote:
>
>> Hi,
>>
>> we are seeing this error using JDK 8 EA b124 (b123, etc.) using the
>> javadoc tool.
>>
>> java.lang.IllegalStateException: endPosTable already set
>> at com.sun.tools.javac.util.DiagnosticSource.setEndPosTable(
>> DiagnosticSource.java:136)
>> at com.sun.tools.javac.util.Log.setEndPosTable(Log.java:350)
>> at com.sun.tools.javac.main.JavaCompiler.parse(JavaCompiler.java:643)
>> at com.sun.tools.javadoc.JavadocTool.parsePackageClasses(
>> JavadocTool.java:243)
>> at com.sun.tools.javadoc.JavadocTool.getRootDocImpl(JavadocTool.java:180)
>> at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:344)
>> at com.sun.tools.javadoc.Start.begin(Start.java:219)
>> at com.sun.tools.javadoc.Start.begin(Start.java:205)
>> at com.sun.tools.javadoc.Main.execute(Main.java:64)
>> at com.sun.tools.javadoc.Main.main(Main.java:54)
>> javadoc: error - fatal exception
>>
>> ===
>> it is similar to BUG JDK-8029145
>> javadoc fails with java.lang.IllegalStateException: endPosTable already
>> set
>>
>> but we are NOT using the -subpackages option
>>
>> I think our issue is b/c we have a directory (tools) that has a class NOT
>> in that package and others in it,
>> e.g.
>>
>> <my_project_dir>/tools/ClassInDefaultPackage.java (not in any package)
>> <my_project_dir>/tools/ClassInToolsPackage.java (in tools package)
>>
>> then we run javaodc with -classpath <my_project_dir>/tools:<my_project_dir>
>> <my_project_dir>/tools/ClassInDefaultPackage.java tools
>>
>> and it gets the above error (this works fine in ALL JDK versions (1.0 to
>> 1.7) prior to JDK 8 EA.
>>
>> How do I submit a Bug for this issue are add comments to JDK-8029145 ?
>>
>> Regards,
>>
>> Neon
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.openjdk.java.net/pipermail/javadoc-dev/attachments/20140314/05adc6f3/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: javadoc8bug.zip
Type: application/zip
Size: 1338 bytes
Desc: not available
URL: <http://mail.openjdk.java.net/pipermail/javadoc-dev/attachments/20140314/05adc6f3/javadoc8bug.zip>
More information about the javadoc-dev
mailing list