failed with state FAILED due to: NA&NullPointerException

 

项目场景:

提示:运行Hadoop实现分区效果
例如:自练习对数据进行分区整理


问题描述:

报错信息Caused by: java.lang.NullPointerException

                  Job job_local924673953_0001 failed with state FAILED due to: NA


原因分析:

数据格式异常(本次为空行过多)

bean类:没有实现接口Writable(新手很容易忘记!)

解决方案:

检查数据内容是否存在很多个“空行”!! 麻烦请将其清理干净!

bean类:没有实现接口Writable

实现接口即可

以上再重新运行就可以解决问题了!

 

我又回来补充了!! 为什么有空格就出现空指针呢?难道空格就不能编译了嘛? 于是乎我又翻了一下源码,源码里面又这样一句话!

@notNull()是什么鬼!!!!

 

只好又去找资料了啊!可辛苦了

@Null  被注释的元素必须为null
@NotNull  被注释的元素不能为null
@AssertTrue  被注释的元素必须为true
@AssertFalse  被注释的元素必须为false
@Min(value)  被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@Max(value)  被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@DecimalMin(value)  被注释的元素必须是一个数字,其值必须大于等于指定的最小值
@DecimalMax(value)  被注释的元素必须是一个数字,其值必须小于等于指定的最大值
@Size(max,min)  被注释的元素的大小必须在指定的范围内。
@Digits(integer,fraction)  被注释的元素必须是一个数字,其值必须在可接受的范围内
@Past  被注释的元素必须是一个过去的日期
@Future  被注释的元素必须是一个将来的日期
@Pattern(value) 被注释的元素必须符合指定的正则表达式。
@Email 被注释的元素必须是电子邮件地址
@Length 被注释的字符串的大小必须在指定的范围内
@NotEmpty  被注释的字符串必须非空
@Range  被注释的元素必须在合适的范围内

 

以上其实在告诉你们另外一个事情!!就是在hadoop编译的时候!! 请不要序列化你不需要的东西!!不然会被认为是null!就比如

date 和state 明显是灰色的,表示我朋友没有调用它, 但是还是进行了序列化编译! 所以被认定为null 就直接爆空指针异常了!!把这两个删掉就可以了!!

就这破bug弄的我, 啊不是,弄的我朋友忙活了俩小时~~~~引以为戒

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值