簡體   English   中英

Java:如何向makefile添加多個外部庫?

[英]Java: How to add multiple external libraries to makefile?

我的Java項目使用了一些Apache Commons庫。 我希望能夠在Unix中運行程序,所以我制作了一個makefile來為我編譯它。 我的項目有4個Java類和4個外部庫(.jars)。 在我的目錄中,我有四個.Java文件和一個名為“ lib”的文件夾,其中包含我的.Jar文件。 這是我的make文件:

 JFLAGS = -g
JC = javac -sourcepath / -classpath lib/commons-httpclient-3.1.jar:lib/commons-io-2.4.jar:lib/commons-codec-1.9.jar:lib/commons-logging-1.1.3.jar
.SUFFIXES: .java .class
.java.class:
$(JC) $(JFLAGS) $*.java

CLASSES = \
SubmissionDriver.java \
FileAndArgs.java \
hashConverter.java \
InvalidAgeException.java

default: classes

classes: $(CLASSES:.java=.class)

clean:
    $(RM) *.class

這是我的錯誤消息:雖然我收到14條錯誤消息,但它們與實際的類文件有關。 這里有一些例子:

SubmissionDriver.java:74: error: cannot find symbol
    public static void httpSend() throws HttpException, IOException{
                                         ^
  symbol:   class HttpException
  location: class SubmissionDriver
SubmissionDriver.java:75: error: cannot find symbol
            HostConfiguration hf=new HostConfiguration();
            ^
 symbol:   class HostConfiguration
 location: class SubmissionDriver
SubmissionDriver.java:75: error: cannot find symbol
            HostConfiguration hf=new HostConfiguration();
                                     ^
 symbol:   class HostConfiguration
 location: class SubmissionDriver
SubmissionDriver.java:77: error: cannot find symbol
            PostMethod post = new PostMethod("myurl");
            ^

它還在thsoe 14錯誤消息的底部指出了這一點:

14 errors
make: *** [SubmissionDriver.class] Error 1
  1. Make不是Java的良好構建工具。 嘗試螞蟻(或Maven或Gradle)
  2. 生成文件的結構方式為每個Java類調用一個“ javac”命令。 如果您的Java類相互依賴,則此方法將無效
  3. 確保在此行之前有一個選項卡

    $(JC)$(JFLAGS)$ *。java

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM