-1

我在 Netbeans 中编写了一个小型 Java 程序。它编译并完美运行。但我还需要在 Linux 的 javac 中编译它,因为这个作业是在那里测试的。每当我尝试时,我都会收到以下编译错误消息。您对此消息有任何想法吗?

/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'

我只是为导入库编写以下行

 import java.sql.*;

我只是使用 println 除了 sql 操作。我的代码的开头如下:

Connection conn = null;
try{
    String username = ".....";
    String password = "....";
    String url = "jdbc:mysql://localhost:3306/.....";
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    conn = DriverManager.getConnection(url, username, password);
    System.out.println("Database connection extablished.");
}
catch(Exception e){
    System.out.println("Cannot connect to database server");
}

在这部分代码之后,没什么特别的,就是普通的几行。

4

3 回答 3

1

不需要(重新)为 linux 编译它。是Java。生成的类文件(来自 windows)将在 LinuxWindows 上运行,您只需要目标主机上的 JRE 或 JDK。

于 2012-04-16T13:47:44.467 回答
1

似乎该错误可能是因为您没有定义 main 方法,因此编译器找不到它。

但是,我不得不问你为什么使用 GCC?普通 JDK 在 Linux 上可用,除非您有充分的理由,否则应该是您的首选!如果 Netbeans 没有在 Linux 上编译您的应用程序,那可能是因为您没有正确设置或安装 JDK - 您可以(并且应该)使用 JDK 而不是 GCJ,后者现在基本上没有维护。

您可以通过包管理器获取它,也可以在此处单独下载。

于 2012-04-16T13:48:00.053 回答
0

使用javac 编译,而不是 GCC(或者GCJ,如果你真的想要一些“GCCish”)。

于 2012-04-16T13:48:14.660 回答