最近新建一个Spring boot项目,本地调试都很顺利,想通过jenkins进行发布的时候却发错,提示程序包sun.plugin2.util不存在。

sun.plugin2.util包实际位于系统plugin.jar中

百度一下,感觉https://blog.csdn.net/mn960mn/article/details/51253038这篇文章,感觉问题比较类似,参考配置如下:

...
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArguments>
            <bootclasspath>${env.JAVA_HOME}/jre/lib/plugin.jar</bootclasspath>
        </compilerArguments>
    </configuration>
</plugin>
...

修改配置后重新编译,发现还是报错,这会是提示找不到java.lang

看来还是要加上rt.jar,继续调整配置如下:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <encoding>UTF-8</encoding>
        <compilerArguments>
            <bootclasspath>${env.JAVA_HOME}/jre/lib/rt.jar:${env.JAVA_HOME}/jre/lib/plugin.jar</bootclasspath>
        </compilerArguments>
    </configuration>
</plugin>

注意:多个包之间,Windows环境用分号";",Linux环境下用冒号":"分隔开

修改配置再次编译成功!

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐