如何更改 Java 中的 Main 函数名称?通过更改任何 dll 文件或任何内容

问题描述 投票:0回答:1

我面临将 java 中的 Main 函数名称更改为 的挑战

public static void xyz(String[] args)

有什么方法可以改变这一点,因为我知道java中的dll文件包含所有规范。 您能列出实现这一目标的步骤吗?

java dll java-8 jvm compiler-construction
1个回答
0
投票

这个约束来自Java虚拟机规范第5章。 “Java 虚拟机通过使用引导类加载器(第 5.3.1 节)创建一个初始类来启动,该初始类以依赖于实现的方式指定。然后,Java 虚拟机链接初始类,对其进行初始化,并调用公共类方法 void main(String[])。“

以hotspot为例,你可能会在hotspot/src/os/linux/launcher/java.c中找到这样的代码: "mainID = (*env)->GetStaticMethodID(env, mainClass, "main", "([Ljava/lang/String;)V");"

© www.soinside.com 2019 - 2024. All rights reserved.