6tail / tyme4j

Tyme是一个非常强大的日历工具库,可以看作 Lunar 的升级版,拥有更优的设计和扩展性,支持公历和农历、星座、干支、生肖、节气、法定假日等。
https://6tail.cn/tyme.html
MIT License
80 stars 23 forks source link

童限信息在 2 月时未考虑实际年月情况 #5

Closed yangyang0507 closed 2 months ago

yangyang0507 commented 2 months ago

Tyme 版本:cn.6tail:tyme4j:1.1.1,截止到目前,都会存在如下问题:

public class TymeTest {
    public static void main(String[] args) {
        ChildLimit childLimit = ChildLimit.fromSolarTime(SolarTime.fromYmdHms(1989, 12, 31, 23, 07, 17), Gender.MAN);
        System.out.println(childLimit);
    }
}

当以上述 Case 跑的时候,童限信息计算出来是 1998-02-29,但是 1998 的 2 月没有 29 日,只到 28 日。

image

会报以下异常:

Exception in thread "main" java.lang.IllegalArgumentException: illegal solar day: 1998-2-29
    at com.tyme.solar.SolarDay.<init>(SolarDay.java:56)
    at com.tyme.solar.SolarDay.fromYmd(SolarDay.java:63)
    at com.tyme.solar.SolarTime.<init>(SolarTime.java:55)
    at com.tyme.solar.SolarTime.fromYmdHms(SolarTime.java:62)
    at com.tyme.eightchar.provider.impl.DefaultChildLimitProvider.getInfo(DefaultChildLimitProvider.java:53)
    at com.tyme.eightchar.ChildLimit.<init>(ChildLimit.java:56)
    at com.tyme.eightchar.ChildLimit.fromSolarTime(ChildLimit.java:67)
6tail commented 2 months ago

v1.1.2已修复。

yangyang0507 commented 2 months ago

效率太高了!感谢提供这么好用的工具,狠狠给作者点赞!