我将程序打包成了jar包,在windows下执行时正确的,但是放在linux下执行就不对了。
windows目录下包括jar包和一个lib文件夹,此文件夹下是需要的其他类库。
linux目录是一样的结构。但是在linux下执行,可以执行main,但是找不到类。
这是MANIFEST文件内容:
Manifest-Version: 1.0
Class-Path: lib\axis.jar lib\commons-discovery-0.2.jar lib\javax.wsdl_1.6.2.v201012040545.jar lib\jaxrpc.jar lib\org.apache.commons.logging_1.1.1.v201101211721.jar lib\saaj.jar
Main-Class: com.sms.wsclient.SGWClient
异常如下:
后来发现是斜杠问题:
linux是左斜杠 /,我的MANIFEST文件里的class-path用了右斜杠 \,所以识别不了。修改之后就可以了。
ps:回去整理一下打包成jar在命令行执行的过程,各种问题,弄得够呛。