JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Java 新手區  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
作者 javac, classpath, package, import, jar 編譯與打包的問題
gagawolala





發文: 24
積分: 0
於 2009-05-09 04:22 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
翻了一夜還是無解~Disapproved

我想寫個 lib 或是 package 或許有人習慣說 jar 檔。
裡面我的檔案路徑為
1
2
3
4
5
/java/ 
/java/air/Hydrogen.java
/java/air/Oxygen.java
/java/liquid/Water.java
/java/liquid/Brine.java

當我在 /java/air/ 下 javac *.java , 則 Hydrogen.java 與 Oxygen.java 各自編譯無誤。
但是如果我要在 /java/liquid/ 下編譯 Water.java 與 Brine.java 該怎麼辦呢?
javac -cp /java/air/Hydrogen.class:/java/air/Oxygen.class Water.java
編譯 search path for source files 時並不會去找。
javac -cp /java/air/ Water.java
編譯時等於去 /java/air/ 裡面找 jar 。
那我還在寫的過程中該怎麼編譯呢?

Water.java
1
2
3
4
5
6
7
8
9
10
package java.liquid;
 
import java.air.Hydrogen;
import java.air.Oxygen;
 
public class Water {
    Hydrogen hd = new Hydrogen();
    Oxygen ox = new Oxygen();
    ....
}

Brine.java
1
2
3
4
5
6
7
8
package java.liquid;
 
import java.liquid.Water;
 
public class Brine {
    Water w = new Water();
    ....
}


reply to postreply to post
作者 Re:javac, classpath, package, import, jar 編譯與打包的問題 [Re:gagawolala]
allopopo





發文: 92
積分: 0
於 2009-05-09 09:18 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
这包包建得有些复杂,我用个傻瓜方法来编译,退到根目录,也就是 java 档的父级,建立一个src文件夹,将你的java档丢到里面,然后捏:

javac -cp src -d . src/java/air/*.java src/java.liquid/*.java

然后会在根目录给你建一个 java 档,但是里面的 air 和 liquid 内包含的是 class 文档。
然后开始建 jar 档。

jar cf lib.jar -C java/air java/liquid

试试看哦,不可以不要打偶……


allopopo edited on 2009-05-09 09:29
reply to postreply to post
作者 Re:javac, classpath, package, import, jar 編譯與打包的問題 [Re:gagawolala]
gagawolala





發文: 24
積分: 0
於 2009-05-09 17:01 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
謝謝我已經可以做了!
依照您的建議我把原來的目錄也做了調整
所以以後裡面只要有一個檔案做修改那就要這樣下把所有的都一起編譯囉?
像你們做比較大的專案那命令不就很長~
javac -cp src -d . src/*/*.java

還是...有其他的做法呢?
我該進入開始用 IDE 像是 eclipse ....


reply to postreply to post
作者 Re:javac, classpath, package, import, jar 編譯與打包的問題 [Re:gagawolala]
allopopo





發文: 92
積分: 0
於 2009-05-09 17:32 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
还有一个自动化的Java编译工具,叫做Ant,蚂蚁哦……
相当于是C语言的Makefile。

做大的Project,还是用Eclipse吧,省点力气。


reply to postreply to post
作者 Re:javac, classpath, package, import, jar 編譯與打包的問題 [Re:gagawolala]
gagawolala





發文: 24
積分: 0
於 2009-05-10 18:10 user profilesend a private message to userreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
今天試用了一整天 eclipse Version: 3.4.2
真的很方便只是要習慣一下操做界面
比起筆記本多了很多東西~XD
附上我練習的小成果Big Smile
請執行 java -jar fun.jar

fun.jar (0.67k)


reply to postreply to post
» JWorld@TW »  Java 新手區

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8