如何創建一個Makefile來編譯我的Java程序與位於src/Hello.java
一個源文件輸出中,我可以./prog
Java的Makefile文件輸出一個可執行
1
A
回答
2
(1)看看http://ant.apache.org/ - 這是一個比Java更適合Java的構建工具。例如,檢查螞蟻中的javac
命令。 (2)您必須通過運行java虛擬機(java
)並告訴它執行什麼來運行java程序。在java中運行程序沒有./xxx方法;該方法執行腳本或可執行程序,並且編譯的java程序是既不是字節碼。你需要的是創建一個小的shell腳本,把它叫做「你好」,給它chmod
執行權限,其內容應該是這樣的:
#!/bin/bash
java -cp . Hello
2
提出的,是不是構建Java程序一個偉大的工具,主要是因爲其核心設計是識別過時的來源(源文件或目標文件)並對其應用變換。 Java編譯器已經處理了這種依賴性檢查,並且爲Java編譯定義Make規則比它的價值更麻煩。
阿德里安史密斯已經建議螞蟻。我會建議Maven作爲替代。
我這個建議的主要原因是,在Maven中獲得一個簡單的項目非常容易:你可以告訴Maven創建整個目錄結構,然後它就可以工作。雖然你可能不喜歡Maven創建的目錄結構,但如果你在一個大型項目中工作,那麼對於一致性有利。 Maven確實有它的侷限性,其中有些是非常痛苦的,但是除非你有知識去解決它們,否則你通常不會遇到它們。
至於運行Java程序,您需要調用沿線的某處的JVM。 shell腳本是一種方法,但通常直接調用JVM更容易。如果您創建一個「可執行的JAR」(這Maven會爲你做的,包括期權包括所有的依賴),你可以調用它像這樣:
java -jar executable.jar
相關問題
- 1. Makefile-不輸出可執行文件
- 2. 的Makefile:執行makefile文件
- 3. 編譯3個可執行文件在一個makefile文件
- 4. 可執行文件輸出
- 5. Makefile支持2個可執行文件
- 6. 從makefile運行可執行文件
- 7. 從makefile運行可執行文件2
- 8. 執行一個雙擊java jar文件時的輸出流
- 9. C - 運行一個可執行文件並檢索輸出
- 10. 具有公共文件的多個可執行文件的Makefile
- 11. 使文件夾中的每個文件都可執行的makefile
- 12. 輸出數據輸出文件每個執行(Java)
- 13. 節點偵聽一個shell可執行文件的輸出
- 14. Makefile - 爲文件夾中的每個.c製作一個可執行文件
- 15. makefile不生成可執行文件
- 16. Makefile文件可執行錯誤
- 17. 從源文件和可執行文件生成一個Makefile文件?
- 18. 從另一個可執行文件獲取輸出
- 19. 使用webpack輸出可執行文件
- 20. 嘗試使用2個可執行文件生成一個makefile文件
- 21. Makefile文件只執行第一目標
- 22. Makefile輸出文件夾
- 23. 輸入/輸出對的Makefile文件
- 24. 幫助簡化多個可執行文件的Makefile
- 25. 具有多個可執行文件的Makefile
- 26. 從makefile中創建兩個單獨的可執行文件(g ++)
- 27. 來自makefile的多個可執行文件
- 28. 將可執行文件輸出到文本文件的Powershell
- 29. 多次輸入文件到一個可執行文件
- 30. C++運行可執行文件和管道輸出到文件
好了,在Linux上,有binfmt,這使得實際運行./app.jar。 – 2011-01-10 16:53:24
想想吧,Windows的Java安裝程序也會註冊「jar」擴展名,所以它可以直接從命令行運行或單擊它來運行。唯一的問題是是否使用控制檯或JVM的窗口版本。更奇特的平臺可能沒有這樣的功能,但(想起HP-UX)。 – 2011-01-10 16:56:07