快速介绍:
对于那些不知道的人; Jollyday是一个API,可帮助您处理可识别假日的代码。它允许您从预配置中检索公共假期。您甚至可以在XML文件中创建自己的“假日配置”,然后将其加载到API中,这正是我正在尝试做的事情。



我已经在XML文件中创建了自己的假期配置,我想将其加载到Jollyday中。

Official Jollyday Documentation(对于0.5.1版)显示了使用以下代码完成此操作的示例...

URL url = new URL("file:some/path/MyHolidays.xml");
HolidayManager m = HolidayManager.getInstance(url);


问题

当我尝试使用此代码时,由于HolidayManager类没有getInstance(URL)方法,因此无法编译。

这是HolidayManager.getInstance()所有重载版本的屏幕截图(从IntelliJ IDEA中看到)。

java - Jollyday API-如何从URL创建HolidayManager实例?-LMLPHP

该文档似乎不正确。

更多信息


  “您使用的API版本正确吗?”


是的,我正在使用随gradle下载的0.5.1版本。此版本与documentation中使用的版本相同。

问题

是否可以使用URL创建HolidayManager实例?
如果是这样,怎么做?

最佳答案

是否可以使用URL创建HolidayManager实例?



是的,但必须先将URL包装在ManagerParameter中。



  该文档似乎不正确。



当代码在2011年底从SourceForge迁移到GitHub时,文档略有过时。
如果查看HolidayManagerGitHub Commit History,则可以看到HolidayManager.getInstance(URL)方法已在this commit中删除。


工作实例

URL url = new URL("file:some/path/MyHolidays.xml");
UrlManagerParameter urlManParam = new UrlManagerParameter(url, new Properties());
HolidayManager holidayManager = HolidayManager.getInstance(urlManParam);


这将完全按照您的预期工作,只需要多花费几行。您也应该使用更好的变量名,我只是想保持简短。

不要忘记导入以下类:

import de.jollyday.HolidayManager;
import de.jollyday.parameter.UrlManagerParameter;
import java.net.URL;
import java.util.Properties;


您现在可以将自定义假日配置加载到Jollyday中。请享用!

关于java - Jollyday API-如何从URL创建HolidayManager实例?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39356960/

10-09 09:36