`
Josh_Persistence
  • 浏览: 1646146 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类

Maven -Unable to locate Spring NamespaceHandler for XML schema namespace

阅读更多

            使用如下命令构建可执行Jar包时,如果使用的是新版本的Maven,在执行Jar包时会告知如下类似的错误:

Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/context]
Offending resource: class path resource [c11searcher-common.xml]

 

           

<plugin>  
                <artifactId>maven-assembly-plugin</artifactId>  
                <configuration>  
                    <appendAssemblyId>false</appendAssemblyId>  
                    <descriptorRefs>  
                        <descriptorRef>jar-with-dependencies</descriptorRef>  
                    </descriptorRefs>  
                    <archive>  
                        <manifest>  
                            <mainClass>com.ebay.montage.eventprocessor.collector.CodeRollOutEventDataCollector</mainClass>  
                        </manifest>  
                    </archive>  
                </configuration>  
                <executions>  
                    <execution>  
                        <id>make-assembly</id>  
                        <phase>package</phase>  
                        <goals>  
                            <goal>assembly</goal>  
                        </goals>  
                    </execution>  
                </executions>  
            </plugin>  

 

这是因为在新版本的Maven中,推荐使用shade来代替assembly 

于是可以使用如下plugin命令:

<plugin>  
     <groupId>org.apache.maven.plugins</groupId>  
     <artifactId>maven-shade-plugin</artifactId>  
     <version>2.1</version>  
     <executions>  
    <execution>  
         <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.ManifestResourceTransformer">  
    <mainClass>com.chuanliu.c11.bootstrap.C11SearcherBootStrap</mainClass>  
    </transformer>  
    </transformers>  
  
    <filters>  
      <filter>  
        <artifact>*:*</artifact>  
            <excludes>  
        <exclude>META-INF/*.SF</exclude>  
        <exclude>META-INF/*.DSA</exclude>  
        <exclude>META-INF/*.RSA</exclude>  
        </excludes>  
    </filter>  
    </filters>  
    </configuration>  
    </execution>  
       </executions>  
</plugin>  

 

这样同样使用mvn clean install -DskipTests后的jar包将被成功执行。

 

 

 

1
1
分享到:
评论

相关推荐

    maven项目使用assembly打包jar时处理Unable to locate Spring NamespaceHandler问题

    使用assembly插件打包jar后启动时,总是出现Unable to locate Spring NamespaceHandler for XML schema....错误,网上找了各种方法都没有用,在尝试了100+失败后,解决了这个问题,在打包的jar中,META-INF目录下,...

    spring-boot-maven-plugin-2.3.0.RELEASE.jar

    java运行依赖jar包

    009 maven插件spring-boot-maven-plugin

    &lt;artifactId&gt;spring-boot-maven-plugin ``` 继承 Starter 父 POM Spring Boot 提供了一个 Starter 父 POM,用于简化 Spring Boot 项目的构建过程。该 POM 包含了许多有用的依赖项和配置,例如 Spring Boot ...

    mybatis-plus-generator-maven-plugin-1.0.0依赖的pom.xml

    mybatis-plus-generator-maven-plugin-v1.0.0依赖的pom.xml,用于mybatis-plus-generator-maven-plugin-1.0.0.jar本地仓库上传时依赖使用

    spring-boot-maven-plugin-1.5.9.RELEASE.jar

    java运行依赖jar包

    spring-boot-maven-plugin-2.1.7.RELEASE.jar

    java运行依赖jar包

    apache-maven-3.5.4-bin.tar.gz

    export M2_HOME=/path/to/apache-maven-3.5.4 export PATH=$M2_HOME/bin:$PATH ``` 替换`/path/to/apache-maven-3.5.4`为你的实际解压路径。保存文件并使更改生效: ```bash source ~/.bash_profile 或 source ~/....

    maven集成jetty所需jar包maven-jetty-plugin,多版本

    要在Maven项目中使用`maven-jetty-plugin`,首先需要在项目的`pom.xml`文件中添加插件的配置。例如: ```xml ... &lt;groupId&gt;org.mortbay.jetty &lt;artifactId&gt;maven-jetty-plugin &lt;version&gt;6.1.x...

    apache-maven-3.9.2.zip配置好的阿里云仓库文件

    5. Maven插件:Maven通过插件机制扩展其功能,如maven-compiler-plugin用于编译,maven-surefire-plugin进行测试,maven-jar-plugin打包成JAR文件等。每个插件都有多个目标(goals),这些目标在生命周期的不同阶段...

    SpringBoot项目使用maven-assembly-plugin根据不同环境打包成tar.gz或者zip

    &lt;assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation=...

    apache-maven-3.5.0

    maven-3.5.0版本的本地资源包,直接解压就可使用。 方式1 需要在系统环境变量中直接配置path中配置,路径是到bin目录。 方式2 新建配置(MAVEN_HOME),路径为是解压后的maven根目录,再在path中引用(%MAVEN_HOME%\...

    maven jar包

    maven-aether-provider-3.2.1-sources.jar maven-antrun-plugin-1.3.jar maven-archiver-2.2.jar maven-artifact-3.2.1-sources.jar maven-assembly-plugin-2.2-beta-5.jar maven-bundle-plugin-1.0.0.jar maven-...

    com.googlecode 的 maven-db-plugin.jar 包

    `maven-db-plugin` 插件有两个版本,即 `1.3` 和 `1.4`,这两个版本的 JAR 文件在压缩包中分别以 `maven-db-plugin-1.4.jar` 和 `maven-db-plugin-1.3.jar` 的形式存在。这些 JAR 文件包含了插件所需的全部类和资源...

    apache-maven-3.6.3(全版本).zip

    apache-maven-3.6.3全部版本的下载文件: apache-maven-3.6.3-bin.tar.gz; apache-maven-3.6.3-bin.zip; apache-maven-3.6.3-src.tar.gz; apache-maven-3.6.3-src.zip;

    apache-maven-3.3.9-bin.zip

    开发者可以使用各种预定义的插件,如maven-surefire-plugin用于运行单元测试,maven-javadoc-plugin生成API文档,或者maven-war-plugin打包Web应用。此外,自定义插件也可以根据项目需求进行开发。 总的来说,...

    maven-resources-plugin-2.4.1.jar

    maven-resources-plugin-2.4.1.jar

    tomcat-maven-plugin

    maven-tomcat-plugin让maven与tomcat配合得很好。它可以把应用部署到Tomcat服务器,也可以把tomcat作为内嵌服务器启动,就像jetty一样。 使用JPDA启动tomcat的远程调试功能。这样就能与eclipse配合起来,轻松地实现...

    apache-maven-3.6.0-setting.xml已修改

    apache-maven-3.6.0,其中setting.xml文件已修改,采用阿里云中央仓库,下载到本地路径“E:\maven\maven-repository”,修改时只要将上面的路径修改成自己的就行。

    maven-archetype-quickstart-1.1.jar下载

    解决Unable to create project from archetype [org.apache.maven.archetypes:maven-archetype-quickstart:1.1] 1. 下载maven-archetype-quickstart-1.1.jar 文件地址: 2.cmd窗口执行mvn install:install-file -...

Global site tag (gtag.js) - Google Analytics