`
coral0212
  • 浏览: 101552 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

java.lang.LinkageError: 正在从引导类加载器加载 JAXB 2.1 API终极解决方案

    博客分类:
  • J2EE
 
阅读更多

第一种:常规解决办法,也就是大多数网上看到的办法,获取到endorsed目录.

public class MainClass {

    /**
     * @param args
     */
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println(System.getProperty("java.endorsed.dirs"));
    }

}

 找到相应位置,将apache-cxf-2.7.4\lib\endorsed下的jar文件放到对应目录下即可。如果没有endorsed目录,则手动建立该目录。其实就是两个jar包,geronimo-jaxws_2.2_spec-1.1.jar和jaxb-api-2.2.6.jar文件

 

2.第一种方法,很多人都说解决不了问题,可以考虑jdk的版本,我就遇到了安装了javase1.4.7,但是用java -version同样还是1.6的版本,所以这里环境变量和jdk-version都无效的,解决了版本的一致性,接下来看cxf的配置文件,这是最关键的,也是我遇到的坎,

<jaxws:endpoint id="surveyService"
		implementor="ws.cxf.impl.SurveyService" address="/SurveyWebService" />

 有了这句话在,在tomcat下启动,就同样还是引导包错误,尝试将上面两个jar放到tomcat/lib下,始终不起作用,但是配置文件另外一种方法,却是可以

<jaxrs:server id="categoryRESTService" address="/">
	<jaxrs:serviceBeans> <ref bean="categoryService" />
	</jaxrs:serviceBeans>
		<jaxrs:extensionMappings>
                   <entry key="json" value="application/json"/>
                   <entry key="xml" value="application/xml"/>
                </jaxrs:extensionMappings>
</jaxrs:server>

 遇到这种情况就是冲突了,要删除一个包,包引导路径错误,

删除项当下的lib中的包:jaxb-impl-2.2.5.jar,果不其然启动成功了,至于具体的原理没有详细了解过,囫囵吞枣吧,见谅!

 ps:java.lang.LinkageError引导类加载器加载 JAXB 2.1 AP,但是如果存在了jaxb-impl-2.2.5的jar包,引用2.2的api,第一个是应该是jdk引导的,后来是依赖本项目工程的,所以有的解决办法是升级到jdk7版本即可解决矛盾,这里没有实践,希望实践过的同学给个肯定的答复.谢谢!

 

 

分享到:
评论

相关推荐

    Exception in thread \"main\" java.lang.LinkageError错误的解决

    NULL 博文链接:https://utopialxw.iteye.com/blog/1138133

    java.lang.NoClassDefFoundError错误解决办法

    "java.lang.NoClassDefFoundError错误解决办法" java.lang.NoClassDefFoundError错误是一种常见的Java错误,它发生在Java虚拟机在编译时能找到合适的类,而在运行时不能找到合适的类导致的错误。下面是该错误的解决...

    在Java中异常分析

    - **异常路径**:`java.lang.Object -&gt; java.lang.Throwable -&gt; java.lang.Error -&gt; java.lang.LinkageError -&gt; java.lang.IncompatibleClassChangeError` - **解释**:当类文件中的类型与预期类型不匹配时抛出。 - ...

    CXF-JAXB包的处理问题

    在这种情况下,错误消息指出,JAXB 2.1 API正在由引导类加载器加载,但实际的实现需要2.2 API。这可能是由于系统类路径或endorsed目录中的JAXB库版本不匹配导致的。 为了解决这个问题,开发者通常会尝试通过设置`...

    jaxb-2_1_9.zip

    java.lang.LinkageError: JAXB 2.0 API is being loaded from the bootstrap classloader, but this RI (from jar:file://build/web/WEB-INF/lib/jaxb-impl.jar!/com/sun/xml/bind/v2/model/impl/ModelBuilder.class...

    juel-Tomcat与EL冲突问题

    启动Tomcat时报错:Caused by: java.lang.LinkageError: loader constraints violated when linking javax/el/ExpressionFactory class 说明:原因是juel.jar, juel-engine.jar, juel-impl.jar包和Tomcat6.0中的el-...

    解决出现 java.lang.ExceptionInInitializerError错误问题

    `java.lang.ExceptionInInitializerError` 是Java编程语言中一种比较特殊的异常,通常在类的静态初始化过程中遇到问题时抛出。这个错误意味着在初始化类的静态变量或静态初始化块(static block)时发生了异常。这类...

    java 异常种类总结【转】.docx

    java.lang.UnsupportedClassVersionError 是一种不支持的类版本错误,指的是在程序中 Java 虚拟机试图从读取某个类文件,但是发现该文件的主、次版本号不被当前 Java 虚拟机支持的时候,抛出的异常。 33. java.lang...

    Burp suite主题插件.jar

    Burp Suite 2020.12 用 FlatLaf 替换了旧的 Look and Feel 类,这是一个开源 Look and Feel 类,它还支持为 IntelliJ 平台开发的 3rd 方主题。此扩展允许您在 Burp Suite 中使用这些主题,并包含许多捆绑主题供您...

    JBPM4运行时错误异常总结

    3. `javax.servlet.ServletException: java.lang.LinkageError: loader constraint violation`: 这个错误是由于两个不同的类加载器加载了同一个类的不同版本,导致签名冲突。解决方法是统一项目和Tomcat服务器中的库...

    常见java异常.txt

    - 类层次结构:java.lang.Object -&gt; java.lang.Throwable -&gt; java.lang.Error -&gt; java.lang.LinkageError -&gt; java.lang.IncompatibleClassChangeError - 描述:当类或接口的实现不符合其定义时,比如方法签名改变...

    endorsed 解决soa连接错误

    在Java中,如果不同库之间存在版本冲突,可能会导致`java.lang.LinkageError`,特别是涉及到Java API的更新时,如JAXB或JAX-WS。 描述中提到,将解压后的jar包放置在`%TOMCAT_HOME%`和`%JAVA_HOME%\lib\endorsed`...

    Burpsuite永久版

    Burpsuite永久使用版,没有使用限制,V1.7.26版本,http抓包工具。

    常见JAVA异常总结

    - 检查类加载器的配置,确保正确加载所需的类。 #### 9. `java.lang.LinkageError` `java.lang.LinkageError` 表示类链接失败。这通常是因为类或其依赖项存在问题,如版本冲突、依赖未找到等问题。 - **解决方法...

    el-api.jar

    el-api,java jar包,el表达式所需要的jar包。java.lang.LinkageError: loader constraints violated when linking javax/el/ExpressionFactory class;jar包冲突

    java异常类型.txt

    5. **`java.lang.LinkageError`** - 与类加载有关的错误,例如无法解析类依赖时会抛出此类错误。 ### 总结 了解这些异常类型对于编写健壮可靠的Java应用程序至关重要。正确地处理异常不仅可以提高程序的稳定性,还...

    Java核心API需要掌握的程度

    5. **ClassLoader**:用于加载类的类加载器,是Java类加载机制的重要组成部分。 6. **Enum**:枚举类型的实现,实现了`Comparable&lt;T&gt;`和`Serializable`接口。 7. **Math**:数学工具类,提供了一系列数学运算的方法...

    classloader类加载器_基于java类的加载方式详解

    如果尝试使用同一个类加载器再次加载同一个类,将会抛出java.lang.LinkageError异常,异常信息为duplicate class definition。要更新一个类,只能创建一个新的类加载器实例来加载新类。对于已经被加载的类,开发者不...

Global site tag (gtag.js) - Google Analytics