我正在尝试为 java 项目编写一个 makefile,如下所示。我连接了一个数据库(当我使用另一个 IDE 而不是 javac 进行编译时已安装并测试工作)。我不知道如何将驱动程序写入makefile。对于以下 makefile,输入 make 后,我收到消息:package com.mysql.jdbc 不存在。但我的 makefile 与 mysql-connector-java-5.1.16-bin.jar 位于同一文件夹中。
JFLAGS = -g
JC = javac\
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) $*.java
JavaLibraries = \
mysql-connector-java-5.1.16-bin.jar
CLASSES = \
DBMain.java\
Update.java\
server.java\
Client.java
default: classes
classes: $(CLASSES:.java=.class)
clean:
$(RM) *.class
感谢您的任何意见。
最佳答案
Java 和 make 不能很好地结合在一起,这一点我再强调也不为过。通过使用 make 构建 Java 项目,您可能会遇到严重的问题。
但是,如果您确实想使用 make,尽管有所有警告,那么您必须调整 Java 编译器的类路径设置:
JFLAGS = -g
JC = javac
CLASSPATH=mysql-connector-java-5.1.16-bin.jar:.
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) -cp $(CLASSPATH) $*.java
...
因此,CLASSPATH
由所有使用过的 JAR 和 *.java 文件的包根目录(我假设是当前目录)组成,在 Unix/Linux 系统上用冒号或分号分隔在 Windows 上。然后在 .java.class
规则中,您必须使用 -cp
标志调用 Java 编译器来传递类路径。
关于java - makefile 中的 JDBC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6222211/