Maven构建可运行的jar包出错解决办法

手上有个项目需要以jar方式运行,使用maven-shade-plugin插件构建成功后,在服务器上运行"nohup java -jar myProject.jar > /dev/null &"出错,错误信息:“Exception in thread "main" java.lang.SecurityException: Invalid signature file digest for Manifest main attributes”,网上搜索了半天,发现一个解决办法:  http://stackoverflow.com/questions/999489/invalid-signature-file-when-attempting-to-run-a-jar

专业成都网站建设公司,做排名好的好网站,排在同行前面,为您带来客户和效益!创新互联建站为您提供成都网站建设,五站合一网站设计制作,服务好的网站设计公司,成都做网站、成都网站制作、成都外贸网站建设负责任的成都网站制作公司!

在pom文件maven-shade-plugin插件的配置信息中添加:

   

       

            *:*

           

                META-INF/*.SF

                META-INF/*.DSA

                META-INF/*.RSA

           

       

   

   

继续运行,之前的错误解决了,却提示新的错误:“Exception in thread "main" org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/context] Offending resource: class path resource [applicationContext.xml]”

解决办法是在构建的时候加入META-INF/spring.schemas 和 META-INF/spring.handlers transformers,最终的maven-shade-plugin插件信息配置如下:

org.apache.maven.plugins

maven-shade-plugin

1.7.1

 

package

shade

       

            *:*

           

                META-INF/*.SF

                META-INF/*.DSA

                META-INF/*.RSA

           

       

   

implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">

META-INF/spring.handlers

implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">

META-INF/spring.schemas

implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">

com.zhilin.paopao.server.NIOServer

重新clean install打包,再次运行之后问题解决~


分享标题:Maven构建可运行的jar包出错解决办法
分享地址:http://pwwzsj.com/article/ihsipp.html