文档章节

使用assembly打出的独立可执行jar包启动时报错spring错误的解决方法

猪刚烈
 猪刚烈
发布于 2014/10/12 11:40
字数 268
阅读 44
收藏 0

      有一个小工程,使用了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>

本文转载自:http://blog.csdn.net/bluishglc/article/details/6085209

共有 人打赏支持
猪刚烈
粉丝 22
博文 708
码字总数 110
作品 1
海淀
程序员
使用assembly打出的独立可执行jar包启动时报错spring错误的解决方法

项目开发使用dubbo,想把服务打成可执行jar包,并将所有的依赖也打包到这个jar文件中,工程依赖使用了spring等,在使用maven的assembly打包成独立可执行的jar包后,在执行时报如下错误: Co...

凯文加内特
2015/05/21
0
0
使用 maven 插件 maven-shade-plugin 对可执行 java 工程及其全部依赖

前半部分转自:http://www.xuebuyuan.com/1500726.html 现在基本上都是采用maven来进行开发管理,我有一个需求是需要把通过maven管理的java工程打成可执行的jar包,这样也就是说必需把工程依...

独钓渔
2016/04/13
668
0
XParseException:schema_reference.4:Failed to re...

异常如图: 平时可以正常运行的springMVC项目,在用maven加入依赖,添加jar包后运行,出现如下异常: XParseException:schema_reference.4:Failed to read schema document 如下: 异常提示...

Qkxh320
2013/10/29
0
0
Java基础 笔记

基础问题 List中去除null 配置管理 maven配置管理,配置maven插件,根据不同的命令读取不同的配置文件 --todo #查看当前处于激活状态的profile maven配置文件管理 1. 在src/main/resources下建...

pandudu
2016/12/27
6
8
SpringBoot构建工程中的一些坑

pom配置 默认打成jar,在pom.xml中指定mainClass。 项目根目录下执行mvn package生成可执行的jar包, jar包中MANIFEST.MF文件会显示mainclass。 启动 @RestController = @Controller + @Res...

noob_fly
2017/07/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Minifilter的动态安装、加载及卸载

MINIFILTER框架的文件系统过滤驱动,无法使用的CreateService和OpenService进行动态加载。 看了一下,使用Inf文件安装Minifilter驱动的方式是在注册表驱动服务项下比传统驱动多创建了Instanc...

simpower
20分钟前
0
0
idea新建springCloud项目(6)- Config Server使用

1.在IDEA新建springCloud项目-Config Server 修改版本,和之前建的eureka项目版本一致,修改完记得刷新: 删除掉不需要的文件: 2.把Config S 服务注册到eureka上去,配置git地址,启动项目 ...

monroeCode
25分钟前
3
0
大数据可视化项目开发总纲

第1章 开发文档总纲 1.1 开发工具清单 名称 版本 备注 Pentaho-bi server pentaho-server-ce-7.1 Pentaho Cde为其内置工具 Pentaho-prd pentaho-prd-ce-7.1 Pentaho Report Designer报表工具...

ZhangLG
26分钟前
2
0
pip安装超时问题

pip3 install --default-timeout=100 tensorflow 设置为100秒 参考: User Guide How to solve ReadTimeoutError: HTTPSConnectionPool(host='pypi.python.org', port=443) with pip?......

亚林瓜子
27分钟前
0
0
fragment 旋转时保持当前实例

设备旋转时保存Fragment的交互状态: setRetainInstance(true);

zdglf
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部