2014-11-13 51 views
0

我已經編制了一個Spring Maven項目JAR。我的依賴都在一個標籤爲lib的目錄中。如何在指定它時執行我的JAR應該使用LIB/*作爲類路徑,並使用log4j.xml和一個名爲marker.properties的屬性文件。我marker.sh使用shell文件運行一個罐子,並指定類路徑和屬性文件路徑

LIB=$INSTALL_PATH/lib 
echo "$LIB" # outputs usr/local/app/lib 
export CLASSPATH=$(JARS=("$LIB"/*.jar); IFS=:; echo "${JARS[*]}") 
PARM="-Dlog4j.configuration=/usr/local/Marker/log4j.xml" 
java $PARM -jar /usr/local/Marker/marker-1.0.jar 

但在運行此我得到的,因爲它是不能夠在classpath中找到的罐子

Exception in thread "main"java.lang.NoClassDefFoundError: org/springframework/context/ConfigurableApplicationContext     at java.lang.Class.getDeclaredMethods0(Native method) 

但是下面的錯誤,這個命令能夠從加載的jar classpath中,但我無法添加屬性文件

java -cp /usr/local/Marker/marker-1.0.jar:"$LIB"/* com.package.Marker 

回答

1

java命令/usr/local/Marker/marker-1.0.jar:"$LIB"/* com.package.Marker工作完全正常。我需要添加屬性文件,並在log4j.xml文件所在文件夾罐置於

0

您可以指定使用-classpath(或-cp)標誌的類路徑;例如:

〜$ Java的罐子package.jar -classpath /路徑/到/類路徑/ *

有關詳細信息,請參閱以下documentation

+0

這是不行的,還是同樣的錯誤 – Pan