有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

linux java对'main'集合的未定义引用2:ld返回1退出状态

我在编译java文件时遇到问题。 我的编译命令:javac-g HelloWorld。爪哇

我写了一个简单的hello world程序:

public class HelloWorld {

    public static void main(String[] args) {
        System.out.println("Hello, World");
    }

}

我正在使用putty,我正在连接ssh。我得到了这个错误:

/usr/lib64/gcc/x86_64-suse-linux/4.6/../../../../lib64/crt1.o: In function `_start':
/home/abuild/rpmbuild/BUILD/glibc-2.14.1/csu/../sysdeps/x86_64/elf/start.S:109: undefined reference to `main'
collect2: ld returned 1 exit status

共 (1) 个答案

  1. # 1 楼答案

    如我所见,您使用的是gcc javac编译器,它不能作为SUN/Oracle实现工作

    我想您需要将 main=HelloWorld添加到命令中。由于几个类可能有一个“main”方法,所以需要告诉链接器使用哪个方法

    此外,您可能需要添加-o,否则,您将得到一个“a.out”文件,这是GNU编译器(以及任何C编译器)的默认可执行文件名

    希望这有帮助