That was probably a stunningly unclear reply. Let me be a little clearer:
The list of classes you actually need is not very long. You can grep
through the Hotspot code to figure it out. Mostly, it consists of
things in java.lang.* and java.lang.*.*.
I'm not a lawyer, but it is my understanding
To be fair, it isn't really all that much compared to the size of the
platform. You can grep through the sources to find out - it is mostly
just the stuff in java.lang.* and java.lang.*.*, with some additional
bits and bobs.
I suspect you can actually do this, too - isn't it fine as long as you
d
Interesting. I guess I'd naively assumed that the 'bytecode engine'
would have some mechansim of "registering" certain classes to act as the
key classes it requires. (My hypothetical setup here is the tuned
hotspot engine but no java.* class files whatsoever)
What we've learnt however is that
Even with just a bytecode execution engine, you would need pretty much
all of the Throwables in java.lang - NullPointerException,
OutOfMemoryError, ArithmeticException, VerifyError, ClassFormatError,
IndexOutOfBoundsException and the like.
The flip side of "what classes does the VM need" is "what
Stephen,
Stephen Colebourne said the following on 08/21/09 18:14:
If you wanted to code from scratch a JVM, but not include the rest of
the Java SE platform (such as the .class files), what would you need to
include? Is Object.class mandatory for a pure JVM? Anything else?
The answers given i
I was actually interested in the thrust of the original question, let me
rephrase it.
If you wanted to code from scratch a JVM, but not include the rest of
the Java SE platform (such as the .class files), what would you need to
include? Is Object.class mandatory for a pure JVM? Anything else?
* David Holmes:
> If you were thinking about this from a basic language perspective - eg
> we must have Object, and we must have Class, and array implies
> Serializable etc, then there is a core set of classes that form the
> transitive closure of the JVM bootstrap process. If you are interested
>
As Martin stated what you are looking for is not part of the JVMS nor
the JLS, but the platform specification, which is essentially the entire
set of Java API's as found for example here:
http://java.sun.com/javase/6/docs/index.html
But the implementation of those classes will then have depend
The set of all public APIs that must be part of the java se platform
are tested by the platform tck, in particular by the "signature test",
and you can get the sources for that test (for research only)
and from that it should be possible (with work) to get a list of
all required classes. But that'
Hello,
I am working on automated termination analysis of Java Bytecode and I am
missing an important bit of information in the Java Virtual Machine
Specification (JVMS). I'd be happy to get some help from you!
Every JVM needs to provide certain classes including code for their native
methods, e.g
10 matches
Mail list logo