-
[郑州|荣耀师兄]JAVA-王耀琪0
首先确定自己是不是把Spring相关依赖打进了jar包,还有就是maven会自动扫描resources下的资源配置文件,打成jar包就不会自动扫描,需要自己设置。可以使用shade插件打包
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<!-- 主函数入口 -->
<mainClass></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>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>编辑于2018-09-14 -
[真传弟子]JAVA-王志雄0
Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/context
耀琪师兄,我根据错误百度查了下,这是因为我的依赖项中有几个Spring Jar。一些spring jar包含同名的元信息文件。为了避免一些元文件被覆盖,必须合并它。使用maven shade插件构建您的JAR文件,需要在pom.xml片段进行合并!!!!
修改了我的pom。xml文件添加
<
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
>
就ok了。
编辑于2018-09-15
- 去第 页