小编ram*_*esh的帖子

在java中获取ClassCastException

嗨,我得到以下异常

线程"main"中的异常java.lang.ClassCastException:javax.mail.util.SharedByteArrayInputStream无法强制转换为javax.mail.Multipart

我在Eclipse IDE中没有得到任何编译异常,但是当我尝试构建项目时,我得到了这个异常.

在构建项目之后,我通过java -jar运行项目,因此它不满足if(内容实例的Multipart)条件,但是当我从Eclipse IDE运行时它工作正常.任何指针都会对我有很大帮助

从eclipse IDE我得到的是megssage.getContent()为javax.mail.internet.MimeMultipart@1dc0e7a但是当使用jar文件运行时我得到的内容为javax.mail.util.SharedByteArrayInputStream@2f0d54

请你告诉我他们之间有什么区别.

修改后的代码是:

 InputStream inStream = null;
    if(!message.getContentType().contains("text/plain")){
        Object content = message.getContent();          
        if (message.isMimeType("multipart/*")) {  
            //message.isMimeType("multipart/*")||
            Multipart multipart = (Multipart) content;
            for (int j = 0; j < multipart.getCount(); j++) {
                BodyPart bodyPart = multipart.getBodyPart(j);
                inStream = bodyPart.getInputStream();
                fileName=bodyPart.getFileName();
                } 
        }
        else{
        System.out.println("content not instance of multipart");    
        }`enter code here`  
Run Code Online (Sandbox Code Playgroud)

请任何人帮助我解决这个问题..

提前致谢...

java exception classcastexception

1
推荐指数
1
解决办法
6632
查看次数

标签 统计

classcastexception ×1

exception ×1

java ×1