mvn打包spring工程成jar时报Unable to locate Spring NamespaceHandler for XML schema namespace错误解决办法
2024-10-15 11:41:19
有一个小工程,使用了spring,在使用maven的assembly打包成独立可执行的jar包后,在执行时报如下错误:
Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace
网上对这个问题也有提及,这是assembly的一个bug.参见:http://jira.codehaus.org/browse/MASSEMBLY-360 原因是spring的多个jar包中都含有spring.handlers和spring.schemas文件,而assembly只会把第一次遇到的文件打入jar包,后面遇到的都会skip掉。
解决方法就是放弃assembly,使用shade插件来打包.在shade的打包配制中指明spring.handlers和spring.schemas文件会以append方式加入进来,从而确保其他spring的jar中的这两个文件的信息不会被遗漏。下面是一份配置的例子:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>activiti.server.deploy.Server</mainClass>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.handlers</resource>
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
<resource>META-INF/spring.schemas</resource>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
最新文章
- NOIP2003pj栈[卡特兰数]
- css 温故而知新 slideDown/slideUp 新思路
- asp.net WebApi and protobuff
- 解决360、猎豹浏览器等极速模式下css3兼容问题
- ServletConfig与ServletContext
- 使用 JavaScript 实现链表
- 备份数据库的时候设置 BufferCount 选项不正确导致 out of memory 的情况
- Android事件传递机制
- Unity3D脚本语言UnityScript初探
- Python进阶07 函数对象
- http authorization basic请求代码示例
- 【阿里云产品公测】以开发者角度看ACE服务『ACE应用构建指南』
- css3 盒模型
- 【转】Android Activity和Intent机制学习笔记----不错
- TensorFlow conv2d实现卷积
- 金融量化分析【day110】:NumPy通用函数
- nodejs多版本管理
- 聚类——WKFCM的matlab程序
- MT【268】投篮第一次很重要
- c语言实现wc功能
热门文章
- 反射式光电开关QRE1113
- Android下Notification,样式style,主题theme的功能实现
- ELK日志相关
- jmeter 插件下载下载方法
- href=";javascript:void(0)"; 的用法
- nginx加载字体文件的时候报错
- mysql 主从同步遇到的问题(1032)
- [转] Entity Framework 无法加载指定的元数据资源。
- 【Unity】6.1 Unity中的C#脚本基础知识
- STL学习笔记— —无序容器(Unordered Container)