2016-03-22 69 views
0

期間需要FILE_NAME我已經編譯和Ubuntu終端上運行我的程序,像這樣:的Makefile Java程序,它運行

的javac ev.java

的Java xyz.class file_name.txt

如何爲此製作makefile?

我已經通過一些教程,但他們不談論的情況下,包括一個文件,坦率地說,我還沒有能夠對它們有很大的意義。

Makefile至今:

all : build run 
build : javac ev.java 
run : java xyz.class 

不,我不想使用Ant,Maven的等等。只有Makefile文件。

+1

純代碼編寫(和Makefile寫)請求是題外話堆棧溢出 - 我們期望在這裏 問題涉及到具體* *編程問題 - 但我們 會很樂意幫助你把它寫自己!告訴我們 [你試過的東西](http://stackoverflow.com/help/how-to-ask),以及你卡在哪裏。 這也將幫助我們更好地回答你的問題。 –

+0

到目前爲止添加了我的工作。 –

回答

1

爲了使這個完整的例子,先從基本的Java程序等,爲Hello.java這裏

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

我們要去然後創建一個Makefile;我們想要運行Hello.class(和Hello.class取決於Hello.java)。讓我們添加一個編譯器OPTS變量和一個CLASSPATH變量(對於這個例子,我們將只使用.並啓用調試)。請注意,make給出了製表符(以及變量賦值中的空格)的語義含義,並且此示例包含製表符

CLASSPATH = . 
OPTS = -g 
run: Hello.class 
    java -cp $(CLASSPATH) Hello 

Hello.class: Hello.java 
    javac $(OPTS) -cp $(CLASSPATH) Hello.java 

clean: 
    rm -f Hello.class