上传图片报错,java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatException

一、问题现象java

上传图片功能,本地测试编译须要引用插件,不然编译不经过;web

<build>
    <plugins>
        <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.3</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
                <encoding>utf-8</encoding>
                <compilerArguments>
                    <verbose />
                    <bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</bootclasspath>
                    <!--<bootclasspath>${java.home}\lib\rt.jar;${java.home}\lib\jce.jar</bootclasspath>-->
                </compilerArguments>
            </configuration>spring

        </plugin>
    </plugins>
</build>
而后本地测试经过,可是发布到测试环境报错,org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/ImageFormatExceptionvim

二、缘由maven

上传压缩图片用到com.sun包的内容,可是测试环境用的java openjdk,lib下面的rt.jar里面没有 com/sun/image/codec/jpeg这个包,致使引用不到这个类测试

三、解决方式:安装标准的jdkui

cd /etcspa

vim profile插件

export JAVA_HOME=/usr/local/jdk8
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar 
export PATH=$JAVA_HOME/bin:$HOME/bin:$HOME/.local/bin:$PATHcode

source profile

java -version

相关文章
相关标签/搜索