java - 打包时“spring.schemas”被覆盖

标签 java spring

我有一个应用程序,我同时使用 spring-beansspring-context jar。当我尝试使用 maven 打包我的应用程序,为我的应用程序生成具有依赖项的单个 jar 时,spring-context jar 的 spring.schemas 文件会覆盖 spring-beans jar 的文件。因此,使用我打包的 jar 文件的另一个应用程序无法识别 spring-beans 的架构位置引用。

遇到这种情况有什么解决方法吗?

最佳答案

经过大量研究后,我发现了 Apache Shade Plugin 它能够附加以下资源:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>2.4.1</version>
    <executions>
        <execution>
            <id>assembly</id>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
            <configuration>
                <transformers>
                    <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>
                    <transformer
                        implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                        <resource>META-INF/spring.tooling</resource>
                    </transformer>
                    <transformer
                        implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer" />
                    <transformer
                        implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer">
                        <addHeader>false</addHeader>
                    </transformer>
                </transformers>
            </configuration>
        </execution>
    </executions>
</plugin>

关于java - 打包时“spring.schemas”被覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32950990/

相关文章:

html - 如何在 thymeleaf 中使用 Select html 标签?

java - 在java中在单个语句中执行多个查询

java - org.apache.log4j.Logger 无法解析尽管 Maven 依赖项

java - Spring ScheduledTask - 启动/停止支持?

java - 为什么java中一个类无法识别另一个类的getter方法?

java - 登录表单 : @RequestMapping cannot handle the POST request

java - 如何忽略Spring Boot的ServerProperties中的未知字段?

java - 在 RecyclerView 的 OnBindViewHolder 中更改 View 的文本颜色或背景颜色

java - Akka DeathWatch - 查找终止原因

java - Spring boot schema.sql 不适用于 mysqldump 文件