EJB 3.1 Final Release 规范说:
18.2.1.2 表达式规则
秒、分和小时属性的默认值为“0”。
dayOfMonth、month、dayOfWeek 和 year 属性的默认值为“*”。
所以你的
@Schedule(dayOfMonth="1")
方法
@Schedule(dayOfMonth="1", second="0", minute="0", hour="0")
所以应该是:
@Schedule(dayOfMonth="1", hour="2")
这应该可以解决问题。