JVMInit function call - where is it located the source?

Aleksey Shipilev shade at redhat.com
Tue Aug 21 16:31:17 UTC 2018


Hi,

I think you need to freshen up the search-fu: find, grep, and ack (beyondgrep). Without it, you
would find understanding the structure of any large project, OpenJDK included, quite frustrating.

On 08/21/2018 06:21 PM, mr rupplin wrote:
> This is given apparently as a function call that will return an int. However the include
> filejava.h shows no source for this function. Where is it located?
[jdk-jdk] $ ack JVMInit src/
src/java.base/unix/native/libjli/java_md_solinux.c
791:JVMInit(InvocationFunctions* ifn, jlong threadStackSize,
800:PostJVMInit(JNIEnv *env, jclass mainClass, JavaVM *vm)

src/java.base/macosx/native/libjli/java_md_macosx.c
885:JVMInit(InvocationFunctions* ifn, jlong threadStackSize,
924:void PostJVMInit(JNIEnv *env, jclass mainClass, JavaVM *vm) {

src/java.base/windows/native/libjli/java_md.c
886:JVMInit(InvocationFunctions* ifn, jlong threadStackSize,
895:PostJVMInit(JNIEnv *env, jclass mainClass, JavaVM *vm)

src/java.base/share/native/libjli/java.h
189:int JVMInit(InvocationFunctions* ifn, jlong threadStackSize,
202:void     PostJVMInit(JNIEnv *env, jclass mainClass, JavaVM *vm);

src/java.base/share/native/libjli/java.c
341:    return JVMInit(&ifn, threadStackSize, argc, argv, mode, what, ret);
529:     * PostJVMInit uses the class name as the application name for GUI purposes,
535:    PostJVMInit(env, appClass, vm);


> And finally where is the javac.c source file? I'm sure it's been here and now its lost. - ok

[jdk-jdk] $ find src/ -name java.c
src/java.base/share/native/libjli/java.c

-Aleksey




More information about the core-libs-dev mailing list