maven打包(调用JDK内部API导致打包不成功时)出现com.sun.xml.internel....不存在

2022/6/25 23:21:47

本文主要是介绍maven打包(调用JDK内部API导致打包不成功时)出现com.sun.xml.internel....不存在,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

当maven项目里面有用到JDK内部的一些类或者接口而导致无法打包成功时,在pom.xml加上下面配置
解决方法:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <compilerArgs>
            <arg>-XDignore.symbol.file</arg>
        </compilerArgs>
        <fork>true</fork>
    </configuration>
</plugin>

出现问题的原因:javac在编译时,并不引用 rt.jar,用的是一个特别的symbol table(lib/ct.sym),这个symbol table不包含所有的sun包的类。由于rt.jar中一些类对访问具有限制,导致不解除这些限制的话会编译不通过,报:程序包XXXXXX不存在 的错误。
-XDignore.symbol.file的作用:告诉javac编译时会引用rt.jar而不是通过symbol table。



这篇关于maven打包(调用JDK内部API导致打包不成功时)出现com.sun.xml.internel....不存在的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程