是否可以从Java运行Makefile?

时间:2010-02-09 03:13:42

标签: java makefile

我在网上搜索但只获得了生成Java Makefile的示例。我的情况有所不同,如果我有一个Makefile,但我只是想从Java运行它?

2 个答案:

答案 0 :(得分:2)

您并没有真正“运行”makefile,而是运行make实用程序,它会在当前目录中查找名为“makefile”或“Makefile”的文件,并处理该文件中的命令。因此,您需要在Java应用程序中执行make。您可以通过Runtime.exec()执行此操作。有关详细信息,请参阅http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Runtime.html#exec%28java.lang.String%29http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html?page=1

您应注意的一个潜在问题是,make可能存在或可能不存在于您的程序运行的计算机上,即使它确实存在,它也可能位于非标准位置。在我的机器上,它是/usr/bin/make,但它可能位于其他地方。小心这一点。

答案 1 :(得分:0)

是。您可以使用Runtime.exec来运行make应用程序。但是,如前所述,您应该考虑文件可能不存在或存在于其他位置的情况。我建议你看看提供这个功能的java.io.File javadoc。另外,不要忘记捕获错误流以进行日志记录/调试。很多时候,程序员只实现输入和输出流。