Ubuntu下如何使用gcc编译并运行Java程序

   2024-09-30 6050
核心提示:在Ubuntu下,你需要先安装Java开发工具包(JDK)和GCC编译器安装JDK和GCC:打开终端,输入以下命令来安装JDK和GCC:sudo apt upd

在Ubuntu下,你需要先安装Java开发工具包(JDK)和GCC编译器

安装JDK和GCC:

打开终端,输入以下命令来安装JDK和GCC:

sudo apt updatesudo apt install openjdk-11-jdk gcc
创建一个Java源文件:

使用文本编辑器创建一个名为HelloWorld.java的文件,内容如下:

public class HelloWorld {    public static void main(String[] args) {        System.out.println("Hello, World!");    }}
编译Java源文件:

在终端中,导航到包含HelloWorld.java文件的目录,然后输入以下命令来编译Java源文件:

javac HelloWorld.java

这将生成一个名为HelloWorld.class的字节码文件。

使用GCC编译并运行Java程序:

首先,你需要创建一个C程序来调用Java程序。使用文本编辑器创建一个名为run_java.c的文件,内容如下:

#include <jni.h>#include<stdio.h>int main(int argc, char *argv[]) {    JavaVMOption options;    JNIEnv *env;    JavaVM *jvm;    JavaVMInitArgs vm_args;    options.optionString = "-Djava.class.path=./";    vm_args.version = JNI_VERSION_1_8;    vm_args.nOptions = 1;    vm_args.options = &options;    vm_args.ignoreUnrecognized = 0;    JNI_CreateJavaVM(&jvm, (void**)&env, &vm_args);    jclass cls = (*env)->FindClass(env, "HelloWorld");    jmethodID mid = (*env)->GetStaticMethodID(env, cls, "main", "([Ljava/lang/String;)V");    jobjectArray args = (*env)->NewObjectArray(env, 0, (*env)->FindClass(env, "java/lang/String"), 0);    (*env)->CallStaticVoidMethod(env, cls, mid, args);    (*jvm)->DestroyJavaVM(jvm);    return 0;}

接下来,编译并运行C程序:

gcc -o run_java run_java.c -I"$JAVA_HOME/include" -I"$JAVA_HOME/include/linux" -L"$JAVA_HOME/jre/lib/amd64/server" -ljvm./run_java

这将运行Java程序并输出“Hello, World!”。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式网站留言    |  赣ICP备2021007278号