Invoking gcj compile program from "c"

Vaijayanthi Mala Suresh vaijayanthimalas@gmail.com
Wed May 27 07:29:00 GMT 2009


I have written an HelloWorld.java as given below
public class HelloWorld {
   public HelloWorld()
   {
     System.out.println("Hello from constructor");
   }
   public void printline()
   {
     System.out.println("Hello from printline");
   }
   public static void main(String [] args) {
     System.out.println("Hello from main");
     HelloWorld ht = new HelloWorld();
     ht.printline();
   }
 }
I have compiled it with gcj as given belwo
gcj -c HelloWorld.java
gcj -shared HelloWorld.o -o libHelloWorld.so
Copied the .so file into the folder as per LD_LIBRARY_PATH.
I have a cstartup.c which does the JVM Initialization and has to do a
FindClass() as given below
res = JNI_CreateJavaVM(&jvm,&env,&vm_args);
if (res < 0)
{
      fprintf(stderr, "Can't create Java VM\n");
exit(1);
    }
cls = (*env)->FindClass(env, "HelloWorld");
if (cls == 0)
{
       fprintf(stderr, "Can't find HelloWorld class\n");
       exit(1);
    }
This prints me "Can't find HelloWorld class"
Can someone help me in this regard?


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /