United StatesChange Country, Oracle Worldwide Web Sites Communities I am a... I want to...
JDK-4313429 : Compiling .class expressions for CLDC leads to compiler internal error

Details
Type:
Bug
Submit Date:
2000-02-17
Status:
Closed
Updated Date:
2012-10-10
Project Name:
JDK
Resolved Date:
2002-03-08
Component:
tools
OS:
solaris_2.5,solaris_8,windows_nt,solaris_2.5.1,linux,generic,windows_98,windows_xp,windows_2000
Sub-Component:
javac
CPU:
x86,sparc,generic
Priority:
P4
Resolution:
Fixed
Affected Versions:
unknown,1.2.2,1.3.0,1.3.0_01,1.3.1
Fixed Versions:
1.4.1 (hopper)

Related Reports
Duplicate:
Duplicate:
Duplicate:

Sub Tasks

Description
Reader.java:997)
	at com.sun.tools.javac.v8.code.ClassReader.complete
(ClassReader.java:952)
	at com.sun.tools.javac.v8.code.Symbol.complete(Symbol.java:366)
	at com.sun.tools.javac.v8.code.Type$ClassType.supertype(Type.java:812)
	at com.sun.tools.javac.v8.code.Symbol$ClassSymbol.isSubClass
(Symbol.java:622)
	at com.sun.tools.javac.v8.comp.Check.isUnchecked(Check.java:541)
	at com.sun.tools.javac.v8.comp.Flow.markThrown(Flow.java:255)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:748)
	at com.sun.tools.javac.v8.tree.Tree$Apply.visit(Tree.java:785)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeExpr(Flow.java:339)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:719)
	at com.sun.tools.javac.v8.tree.Tree$Exec.visit(Tree.java:699)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
	at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:626)
	at com.sun.tools.javac.v8.tree.Tree$Try.visit(Tree.java:642)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
	at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:488)
	at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
	at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:456)
	at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
	at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
	at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
	at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:380)
	at com.sun.tools.javac.v8.Main.compile(Main.java:247)
	at com.sun.tools.javac.Main.compile(Main.java:26)
	at java.lang.reflect.Method.invoke(Native Method)
	at org.apache.tools.ant.taskdefs.compilers.Javac13.execute
(Javac13.java:99)
	at org.apache.tools.ant.taskdefs.Javac.execute(Unknown Source)
	at org.apache.tools.ant.Target.execute(Unknown Source)
	at org.apache.tools.ant.Project.runTarget(Unknown Source)
	at org.apache.tools.ant.Project.executeTarget(Unknown Source)
	at org.apache.tools.ant.taskdefs.Ant.execute(Ant.java:214)
	at org.apache.tools.ant.taskdefs.CallTarget.execute(CallTarget.java:109)
	at org.apache.tools.ant.Target.execute(Unknown Source)
	at org.apache.tools.ant.Project.runTarget(Unknown Source)
	at org.apache.tools.ant.Project.executeTarget(Unknown Source)
	at org.apache.tools.ant.Project.executeTargets(Unknown Source)
	at org.apache.tools.ant.Main.runBuild(Unknown Source)
	at org.apache.tools.ant.Main.main(Unknown Source)

source is available if you really need it; assuming you have ant and jasper
sources it is only one more file
(Review ID: 127607)
======================================================================

Name: bsC130419			Date: 07/24/2001


[this is related to http://developer.java.sun.com/developer/bugParade/bugs/4241540.html
and the other CLDC-specific version of it...bug # ....????]
--------------
java version "1.3.1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-b24)
Java HotSpot(TM) Client VM (build 1.3.1-b24, mixed mode)

The J2ME Wireless Toolkit is missing NoClassDefFoundError.  When the source code
includes a statement like "if (type == Vector.class)", the compiler crashes with
the following message:

Compiling 22 source files to D:\Code\mobizardJ2ME\core\build\unverified
An exception has occurred in the compiler (1.3.1). Please file a bug at the Java
Develop
er Connection (http://java.sun.com/cgi-bin/bugreport.cgi).  Include your program
and the following diagnostic in your report.  Thank you.
com.sun.tools.javac.v8.code.Symbol$CompletionFailure: file
java\lang\NoClassDefFoundError.class not found
    at com.sun.tools.javac.v8.code.ClassReader.fillIn(ClassReader.java:997)
    at com.sun.tools.javac.v8.code.ClassReader.complete(ClassReader.java:952)
    at com.sun.tools.javac.v8.code.Symbol.complete(Symbol.java:366)
    at com.sun.tools.javac.v8.code.Symbol$ClassSymbol.flags(Symbol.java:578)
    at com.sun.tools.javac.v8.comp.Resolve.findMethod(Resolve.java:367)
    at
com.sun.tools.javac.v8.comp.Resolve.resolveQualifiedMethod(Resolve.java:808)
    at com.sun.tools.javac.v8.comp.Resolve.resolveConstructor(Resolve.java:848)
    at com.sun.tools.javac.v8.comp.TransInner.makeNewClass(TransInner.java:242)
    at
com.sun.tools.javac.v8.comp.TransInner.classDollarSym(TransInner.java:1214)
    at com.sun.tools.javac.v8.comp.TransInner.classOf(TransInner.java:1309)
    at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1574)
    at com.sun.tools.javac.v8.tree.Tree$Select.visit(Tree.java:963)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:47)
    at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1479)
    at com.sun.tools.javac.v8.tree.Tree$Apply.visit(Tree.java:785)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:179)
    at com.sun.tools.javac.v8.tree.Tree$Exec.visit(Tree.java:699)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:47)
    at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:111)
    at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:100)
    at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1436)
    at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1373)
    at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
    at
com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
    at com.sun.tools.javac.v8.comp.TransInner.translate(TransInner.java:1335)
    at
com.sun.tools.javac.v8.comp.TransInner.translateTopLevelClass(TransInner.java:16
0
3)
    at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:397)
    at com.sun.tools.javac.v8.Main.compile(Main.java:247)
    at com.sun.tools.javac.Main.compile(Main.java:26)
    at java.lang.reflect.Method.invoke(Native Method)
    at org.apache.tools.ant.taskdefs.compilers.Javac13.execute(Javac13.java:99)
    at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:461)
    at org.apache.tools.ant.Target.execute(Target.java:153)
    at org.apache.tools.ant.Project.runTarget(Project.java:898)
    at org.apache.tools.ant.Project.executeTarget(Project.java:536)
    at org.apache.tools.ant.Project.executeTargets(Project.java:510)
    at org.apache.tools.ant.Main.runBuild(Main.java:421)
    at org.apache.tools.ant.Main.main(Main.java:149)
(Review ID: 128271)
======================================================================


Name: saC57035			Date: 02/17/2000


The below test correctly fails compilation under jdk1.2 and results in internal error under jdk1.3.
It looks like links for the automatically generated method class$ are resolved differently than for
user defined methods.

You can use CLDC standard classes in bootclasspath to reproduce the problem, but if you don't have 
them, just make sure NoClassDefFoundError is inaccessible from bootclasspath to reproduce this.

-------------- Test.java --------------------
public class Test {
    public static void main(String[] args) {
        Class cls = Object.class;
    }
}
--------------- Output under jdk1.2 ---------
javac -bootclasspath /set/ejck/kvm/dr5/api/classes Test.java
Test.java:1: Class java.lang.NoClassDefFoundError not found in java.lang.Class class$(java.lang.String).
public class Test {
--------------- Output under jdk1.3 ---------
javac -bootclasspath /set/ejck/kvm/dr5/api/classes Test.java
An exception has occurred in the compiler (1.3.0rc1). Please file a bug at the Java Developer 
Connection (http://java.sun.com/cgi-bin/bugreport.cgi).  Include your program and the following 
diagnostic in your report.  Thank you.

com.sun.tools.javac.v8.code.Symbol$CompletionFailure: file java/lang/NoClassDefFoundError.class not found
        at com.sun.tools.javac.v8.code.ClassReader.fillIn(ClassReader.java:997)
        at com.sun.tools.javac.v8.code.ClassReader.complete(ClassReader.java:952)
        at com.sun.tools.javac.v8.code.Symbol.complete(Symbol.java:366)
        at com.sun.tools.javac.v8.code.Symbol$ClassSymbol.flags(Symbol.java:578)
        at com.sun.tools.javac.v8.comp.Resolve.findMethod(Resolve.java:366)
        at com.sun.tools.javac.v8.comp.Resolve.resolveQualifiedMethod(Resolve.java:807)
        at com.sun.tools.javac.v8.comp.Resolve.resolveConstructor(Resolve.java:826)
        at com.sun.tools.javac.v8.comp.TransInner.makeNewClass(TransInner.java:239)
        at com.sun.tools.javac.v8.comp.TransInner.classDollarSym(TransInner.java:1198)
        at com.sun.tools.javac.v8.comp.TransInner.classOf(TransInner.java:1291)
        at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1554)
        at com.sun.tools.javac.v8.tree.Tree$Select.visit(Tree.java:963)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
        at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:106)
        at com.sun.tools.javac.v8.tree.Tree$VarDef.visit(Tree.java:470)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:47)
        at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:111)
        at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
        at com.sun.tools.javac.v8.tree.TreeTranslator._case(TreeTranslator.java:100)
        at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1418)
        at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
        at com.sun.tools.javac.v8.comp.TransInner._case(TransInner.java:1355)
        at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
        at com.sun.tools.javac.v8.tree.TreeTranslator.translate(TreeTranslator.java:35)
        at com.sun.tools.javac.v8.comp.TransInner.translate(TransInner.java:1317)
        at com.sun.tools.javac.v8.comp.TransInner.translateTopLevelClass(TransInner.java:1583)
        at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:397)
        at com.sun.tools.javac.v8.Main.compile(Main.java:247)
        at com.sun.tools.javac.Main.main(Main.java:16)
---------------------------------------------

======================================================================

Name: ks88420			Date: 09/19/2000


>java -version
java version "1.3.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0-C)
Java HotSpot(TM) Client VM (build 1.3.0-C, mixed mode)

E:\DevTools\was3_5\hosts\default_host\my_sec\servlets>javac LoginServlet.java
An exception has occurred in the compiler (1.3.0). Please file a bug at the Java
 Developer Connection (http://java.sun.com/cgi-bin/bugreport.cgi).  Include your
 program and the following diagnostic in your report.  Thank you.
com.sun.tools.javac.v8.code.Symbol$CompletionFailure: file org\omg\SecurityLevel
2\LoginFailed.class not found
        at com.sun.tools.javac.v8.code.ClassReader.fillIn(ClassReader.java:997)
        at com.sun.tools.javac.v8.code.ClassReader.complete(ClassReader.java:952
)
        at com.sun.tools.javac.v8.code.Symbol.complete(Symbol.java:366)
        at com.sun.tools.javac.v8.code.Type$ClassType.supertype(Type.java:812)
        at com.sun.tools.javac.v8.code.Symbol$ClassSymbol.isSubClass(Symbol.java
:622)
        at com.sun.tools.javac.v8.comp.Check.isUnchecked(Check.java:541)
        at com.sun.tools.javac.v8.comp.Flow.markThrown(Flow.java:255)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:748)
        at com.sun.tools.javac.v8.tree.Tree$Apply.visit(Tree.java:785)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeExpr(Flow.java:339)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:719)
        at com.sun.tools.javac.v8.tree.Tree$Exec.visit(Tree.java:699)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
        at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:488)
        at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:456)
        at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
        at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:380)
        at com.sun.tools.javac.v8.Main.compile(Main.java:247)
        at com.sun.tools.javac.Main.main(Main.java:16)
================
Source file:
============================
import java.io.*;
import javax.servlet.http.*;
import javax.servlet.*;
import com.ibm.ejs.security.util.Base64Coder;
import com.ibm.websphere.security.SSOAuthenticator;
import com.ibm.ejs.security.*;
import java.rmi.*;
import javax.naming.InitialContext;

public class LoginServlet extends HttpServlet {
// Strings
	private         String loginID = null;
	private         String password = null;
	private         String redirectURL = null;
	private String defaultRedirectUrl = null;

/*
	public void init(ServletConfig conf)throws ServletException {
		super.init(conf);

		defaultRedirectUrl = getInitParameter("DefaultRedirectURL");
	}
*/
	protected void setUserData(String uid, String pwd) {
		loginID = uid;
		password = pwd;
	}
	protected void setRedirectURL(String url) {
		redirectURL = url;
	}
	protected void login( HttpServletRequest req, HttpServletResponse res) {
	SSOAuthenticator ssoAuth = new SSOAuthenticator();

		ssoAuth.login(loginID, password, req, res);
	}

	public void doPost(HttpServletRequest req, HttpServletResponse res)
	throws ServletException, IOException {
		String		loginID = null; // loginID found on form
		String		userPw = null;	// password
		String		redirectURL = null;

						// redirect url
		loginID = req.getParameter("loginID");// obtain loginID data
form
		userPw = req.getParameter("password");// obtain password from
form
		redirectURL = req.getParameter("jumpto");// obtain redirect url
from form

		if (defaultRedirectUrl != null) {
						// override redirect url with
default
			redirectURL = defaultRedirectUrl;
		}
		int err;			// validate parameters
		if ((err = checkParams(loginID, userPw, redirectURL)) != 0) {
			
			return;
		}
// Set login data
		setUserData(loginID, userPw);
		setRedirectURL(redirectURL);
// perform the log on
		res.setContentType("text/html");
		PrintWriter	out = res.getWriter();
		boolean         success = false;
		boolean         setSSO = true;

		try {
			login(req, res);
			success = true;
		}
		catch (ServletException se) {
			out.println(
				    "CustomLoginServlet: ERROR logging on"
				    + se);
		}
	}

	public void postLogin(HttpServletRequest req,
			      HttpServletResponse res)
	throws ServletException {
	}
	private int checkParams(String loginID, String userPw, String
				redirectURL) {
		int		err = 0;

						// zero mean no error
		if (!(loginID != null && (loginID.length() != 0))) {
			err = 1;
			return err;
		}
		if (!(userPw != null && (userPw.length() != 0))) {
			err = 2;
			return err;
		}
		if (!(redirectURL != null && (redirectURL.length() != 0))) {
			err = 3;
			return err;
		}
		return err;
	}
	public String getServletInfo() {
		return "CustomLoginServlet";
	}
	}
(Review ID: 109781)
======================================================================

Name: krC82822			Date: 06/05/2001


java version "1.3.1"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-b24)
Java HotSpot(TM) Client VM (build 1.3.1-b24, mixed mode)

trying to compile the examples (log4j-1.1.1\src\java\org\apache\log4j\examples)
directory from Log4J

The source code is the exact code downloaded from the Log4J site

here is the error message:

E:\log4j-1.1.1\src\java\org\apache\log4j\examples>javac -d e:\log4j-1.1.1
\dist\classes *.java
An exception has occurred in the compiler (1.3.1). Please file a bug at the
Java Developer Connection (http://java.sun.com/cg
i-bin/bugreport.cgi).  Include your program and the following diagnostic in
your report.  Thank you.
com.sun.tools.javac.v8.code.Symbol$CompletionFailure: file
javax\xml\parsers\FactoryConfigurationError.class not found
        at com.sun.tools.javac.v8.code.ClassReader.fillIn(ClassReader.java:997)
        at com.sun.tools.javac.v8.code.ClassReader.complete
(ClassReader.java:952)
        at com.sun.tools.javac.v8.code.Symbol.complete(Symbol.java:366)
        at com.sun.tools.javac.v8.code.Type$ClassType.supertype(Type.java:812)
        at com.sun.tools.javac.v8.code.Symbol$ClassSymbol.isSubClass
(Symbol.java:622)
        at com.sun.tools.javac.v8.comp.Check.isUnchecked(Check.java:541)
        at com.sun.tools.javac.v8.comp.Flow.markThrown(Flow.java:255)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:748)
        at com.sun.tools.javac.v8.tree.Tree$Apply.visit(Tree.java:785)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeExpr(Flow.java:339)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:719)
        at com.sun.tools.javac.v8.tree.Tree$Exec.visit(Tree.java:699)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
        at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:685)
        at com.sun.tools.javac.v8.tree.Tree$Conditional.visit(Tree.java:682)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
        at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:685)
        at com.sun.tools.javac.v8.tree.Tree$Conditional.visit(Tree.java:682)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:693)
        at com.sun.tools.javac.v8.tree.Tree$Conditional.visit(Tree.java:682)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStats(Flow.java:413)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:520)
        at com.sun.tools.javac.v8.tree.Tree$Block.visit(Tree.java:492)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeStat(Flow.java:394)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:488)
        at com.sun.tools.javac.v8.tree.Tree$MethodDef.visit(Tree.java:441)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
        at com.sun.tools.javac.v8.comp.Flow._case(Flow.java:456)
        at com.sun.tools.javac.v8.tree.Tree$ClassDef.visit(Tree.java:402)
        at com.sun.tools.javac.v8.comp.Flow.analyze(Flow.java:321)
        at com.sun.tools.javac.v8.comp.Flow.analyzeDef(Flow.java:379)
        at com.sun.tools.javac.v8.JavaCompiler.compile(JavaCompiler.java:380)
        at com.sun.tools.javac.v8.Main.compile(Main.java:247)
        at com.sun.tools.javac.Main.main(Main.java:16)
(Review ID: 125754)
======================================================================

Name: bsC130419			Date: 06/29/2001


java version "1.3.0_01"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_01)
Java HotSpot(TM) Client VM (build 1.3.0_01, mixed mode)

Synopsis was:
  compiler crashes; cant find org.apache.jasper.JasperException

I'm building a new ant task to compile jsp pages with jasper, and javac is
crashing telling me to file a bug report:
An exception has occurred in the compiler (1.3.0). Please file a bug at the
Java Developer Connection (http://java.sun.com/cgi-bin/bugreport.cgi).  Include
your program and the following diagnostic in your report.  Thank you.
com.sun.tools.javac.v8.code.Symbol$CompletionFailure: file
javax\servlet\ServletException.class not found
	at com.sun.tools.javac.v8.code.ClassReader.fillIn(Class

                                    

Comments
CONVERTED DATA

BugTraq+ Release Management Values

COMMIT TO FIX:
hopper

FIXED IN:
hopper

INTEGRATED IN:
hopper

VERIFIED IN:
hopper


                                     
2004-06-14
WORK AROUND



Name: ks88420			Date: 09/19/2000


N/A
(Review ID: 109781)
======================================================================
                                     
2004-06-11
PUBLIC COMMENTS

..
                                     
2004-06-10
EVALUATION

The code generated for the class literal syntax requires certain platform
classes to be present.  The compiler assumes that the core Java platform
classes are always available.  Clearly, it is possible to violate this
assumption by using the -bootclasspath switch, however, this switch is
intended for users who know what they are doing.  The compiler should recover
more gracefully from this error, however.

william.maddox@eng 2000-02-17

Given that javac is used with CLDC, and CLDC does not
have this class, javac should give an error something to the effect
that class literals aren't supported in the absence of that class.

###@###.### 2001-10-10

The NoClassDefFoundError class has been added to CLDC 1.1, which at
this writing has passed the Final Approval Ballot stage of the JCP
but which is not quite yet complete.

###@###.### 2003-03-07
                                     
2003-03-07



Hardware and Software, Engineered to Work Together