maven编译不通过:软件包com.sun.org.apache.xml.internal.security.utils.Base64 不存在

 问题:代码中使用了sun公司的第三方私有库,导致编译不通过

maven打包异常:软件包com.sun.org.apache.xml.internal.security.utils.Base64 不存在

加上如下这段。将${java.home}/lib/rt.jar添加到maven的compiler里面编译就ok了。

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
        <source>1.6</source>
        <target>1.6</target>
        <encoding>${project.build.sourceEncoding}</encoding>
        <!-- added by xiluhua 20160627 
            com.sun.org.apache.xml.internal.security.utils.Base64;编译异常
            将${java.home}/lib/rt.jar添加到maven的compiler里面
       如果 JAVA_HOME 里面没有,将 jre 里面的 copy 过来 --> <compilerArguments> <verbose /> <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</bootclasspath> </compilerArguments>
</configuration> </plugin>

但是在Linux环境中把rt.jar 拷贝到lib下还是编译不通过, 注意环境:

${delimiter} 这个分隔符,在Windows下是“;”分号,在Linux下是“:”冒号。

 

posted @ 2016-06-27 19:05  xiluhua  阅读(19170)  评论(1编辑  收藏  举报