Skip to main content

BCEL used in JDK?

5 replies [Last post]
cowwoc
Offline
Joined: 2003-08-24

I think there is a problem with the JDK 5.0 build. Specifically, I noticed that you rely upon BCEL internally and I happen to know for a fact that the latest version of BCEL has numerous JDK-5.0 specific bugs that cause it to produce invalid class files when processing JDK-5.0 classes. Isn't this a problem?

Gili

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
timbell
Offline
Joined: 2003-06-10

> I think there is a problem with the JDK 5.0 build.

Please start by defining BCEL (just so everyone here is talking about the same thing...) Remember that we are talking to a worldwide audience here

> Specifically, I noticed that you rely upon BCEL
> internally

Where? How?

> and I happen to know for a fact that the
> latest version of BCEL has numerous JDK-5.0 specific
> bugs that cause it to produce invalid class files
> when processing JDK-5.0 classes. Isn't this a
> problem?

More details, please. Example code, test cases, specifics.

cowwoc
Offline
Joined: 2003-08-24

> > I think there is a problem with the JDK 5.0 build.
>
> Please start by defining BCEL (just so everyone here
> is talking about the same thing...) Remember that we
> are talking to a worldwide audience here

http://jakarta.apache.org/bcel/

> > Specifically, I noticed that you rely upon BCEL
> > internally
>
> Where? How?

Check out the directory tree. There is a BCEL directory floating around. I haven't actually looked into the details.

> > and I happen to know for a fact that the
> > latest version of BCEL has numerous JDK-5.0
> specific
> > bugs that cause it to produce invalid class files
> > when processing JDK-5.0 classes. Isn't this a
> > problem?
>
> More details, please. Example code, test cases,
> specifics.

Sorry, this is outside my scope. I happen to have developed with BCEL in the recent past (3 months ago) and it generated class files that triggered VerifierError messages from the JRE bytecode verifier. Upon moving to a different bytecode generator (ASM) the problems went away.

Gili

kellyohair
Offline
Joined: 2004-09-03

I'm going to look into this. I suspect that BCEL is delivered but may not be used during the builds or is used on older classfiles only. I'll find out.

It does sound like we may be shipping a stale BCEL version, and I'll dig into that issue too.

Thanks for bringing this to our attention.

jeffsuttor
Offline
Joined: 2003-06-10

BCEL is used internally by XSLTC to "compile" XSLT stylesheets into bytecodes for execution. all interfaces are internal:

com/sun/org/apache/bcel/internal/...

and not exposed as public. it is not used as part of the build process.

cowwoc
Offline
Joined: 2003-08-24

Sorry, I still do not understand. Does the build process depend on XSLTC? Why is it part of the build package? :) Please elaborate...

Gili