jar檔案打包

ahesihua發表於2011-11-08

今天在學習打jar包。

主要目的是我想在windows下面測試通過了jar包後,再將其放在linux下執行。

我在windows下面通過cmd執行的時候出現了一個問題。我以普通的打jar的方式將jar包打出,但是當前目錄引用了另外一個第三方的jar檔案,所以導致我在執行的時候程式一直提示找不到那個第三方的jar包。於是我到網上找資料如何將jar包匯入進來,主要是用到了下面的方式:

win32     java -Xbootclasspath/a: some.jar;some2.jar;  -jar test.jar
unix          java -Xbootclasspath/a: some.jar:some2.jar:  -jar test.jar
上面的摘抄來自http://www.iteye.com/topic/332580
但是程式還是報錯。於是問了同事,他給我的解決方式是
InputStream inStream = Test.class.getResourceAsStream("/config/log4j.properties");
  Properties props = new Properties();
  props.load(inStream);
  PropertyConfigurator.configure(props);
 
之前的語句是這樣寫的PropertyConfigurator.configure(Test.class.getResource("/config/log4j.properties").getFile());
改了之後將log的jar包放到執行的jar的目錄下。然後再次執行程式,測試通過。
另外一個解決的方式是打包的時候選擇打包成Runnable JAR file。這樣就不會出現上面的問題了。
在此感謝我的兩位同事。^-^~~

相關文章