JDK-4435036 : Source build fails in javadoc run.
  • Type: Bug
  • Component: hotspot
  • Sub-Component: runtime
  • Affected Version: 1.4.0
  • Priority: P3
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris_7
  • CPU: sparc
  • Submitted: 2001-04-06
  • Updated: 2001-04-09
  • Resolved: 2001-04-09
Related Reports
Duplicate :  
Description
During the merlin nightly source bundle testing, the javadoc command failed
during the build of the JDK javadocs.  An identical javadoc run did 
succeed earlier
during the normal build (not from the source bundle), even though the two
runs should have been identical.  A subsequent re-run of the failed javadoc
command ran properly right through the end, so the failure is sporadic.


The build log is attached, from
/net/mizu/usr/re/jdk1.4/logs/j2sdk1.4.0-build-solsparc.log

The failing command is:

./../build/solaris-sparc/bin/javadoc -J-mx180m -splitIndex -use -doctitle 'Java<
sup><font size=-2>TM</font></sup> 2 Platform, Standard Edition, v 1.4.0<br>API S
pecification' -windowtitle 'Java 2 Platform SE v1.4.0' -header '<b>Java<sup><fon
t size=-2>TM</font></sup>&nbsp;2&nbsp;Platform<br>Std.&nbsp;Ed. v1.4.0</b>' -bot
tom '<font size="-1"><a href="http://java.sun.com/cgi-bin/bugreport.cgi">Submit 
a bug or feature</a><br>For further API reference and developer documentation, s
ee <a href="http://java.sun.com/j2se/1.4/devdocs-vs-specs.html">Java 2 SDK SE De
veloper Documentation</a>. That documentation  contains more detailed, developer
-targeted descriptions, with conceptual overviews, definitions of terms, workaro
unds, and working code examples. <p>Java, Java 2D, and JDBC are trademarks or re
gistered trademarks of Sun Microsystems, Inc. in the US and other countries.<br>
Copyright 1993-2001 Sun Microsystems, Inc. 901 San Antonio Road<br>Palo Alto, Ca
lifornia, 94303, U.S.A.  All Rights Reserved.</font>' -group "Java 2 Platform Pa
ckages" "java.*:javax.swing*:javax.accessibility:javax.imageio*:javax.naming*:ja
vax.net*:javax.print*:javax.sound*:org.omg.*:javax.rmi*:javax.sql*:javax.transac
tion*:javax.xml*:org.w3c.dom*:org.xml.sax*:javax.security*:org.ietf*:javax.crypt
o*" -overview ./../src/share/classes/overview-core.html                                        -d ./../build/solaris-sparc/doc/api                                      -sourcepath "./../src/share/classes:./../build/solaris-sparc/
gensrc:./../src/share/doc/stub"                     java.applet java.awt java.awt.color java.awt.datatransfer ...

The exception is:

Generating ./../build/solaris-sparc/doc/api/java/util/jar/Manifest.html...
Generating ./../build/solaris-sparc/doc/api/java/util/jar/JarException.html...
javadoc: In doclet class com.sun.tools.doclets.standard.Standard,  method start 
has thrown an exception java.lang.reflect.InvocationTargetException
java.lang.ArithmeticException: / by zero
        at java.text.DigitList.set(DigitList.java:478)
        at java.text.DecimalFormat.format(DecimalFormat.java:548)
        at java.text.DecimalFormat.format(DecimalFormat.java:501)
        at java.text.NumberFormat.format(NumberFormat.java:246)
        at java.text.SimpleDateFormat.zeroPaddingNumber(SimpleDateFormat.java:66
6)
        at java.text.SimpleDateFormat.subFormat(SimpleDateFormat.java:554)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:453)
        at java.text.SimpleDateFormat.format(SimpleDateFormat.java:407)
        at java.text.DateFormat.format(DateFormat.java:309)
        at java.util.Date.toString(Date.java:990)
        at com.sun.tools.doclets.HtmlDocWriter.today(HtmlDocWriter.java:283)
        at com.sun.tools.doclets.standard.HtmlStandardWriter.printHeader(HtmlSta
ndardWriter.java:312)
        at com.sun.tools.doclets.standard.ClassWriter.generateClassFile(ClassWri
ter.java:168)
        at com.sun.tools.doclets.standard.ClassWriter.generate(ClassWriter.java:
92)
        at com.sun.tools.doclets.standard.Standard.generateClassCycle(Standard.j
ava:215)
        at com.sun.tools.doclets.standard.Standard.generateClassFiles(Standard.j
ava:186)
        at com.sun.tools.doclets.standard.Standard.startGeneration(Standard.java
:150)
        at com.sun.tools.doclets.standard.Standard.start(Standard.java:40)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:30)
        at sun.reflect.InflatableMethodAccessorImpl.invoke(InflatableMethodAcces
sorImpl.java:48)
        at java.lang.reflect.Method.invoke(Method.java:306)
        at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:216)
        at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:95)
        at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:294)
        at com.sun.tools.javadoc.Start.begin(Start.java:102)
        at com.sun.tools.javadoc.Main.execute(Main.java:35)
        at com.sun.tools.javadoc.Main.main(Main.java:25)
1 error
280 warnings
gnumake: *** [coredocs] Error 1

Comments
PUBLIC COMMENTS .
10-06-2004

EVALUATION This would appear to be a VM bug... The exception java.lang.ArithmeticException: / by zero at java.text.DigitList.set(DigitList.java:478) is occurring on a line of code that looks like this: digits[--left] = (byte) ('0' + (source % 10)); As you can see, the only divide-like instruction divides by 10, which should never result in this exception. neal.gafter@Eng 2001-04-06 We are looking to this same issue for bug 4427606, Closing as a duplicate of that bug
06-04-2001