库jar从客户端CLASSPATH读取.properties文件

时间:2014-11-12 21:28:22

标签: java maven

我制作了一个maven库jar,它根据配置的格式映射检测日期格式。 目前我对格式映射进行了硬编码,但我希望将格式映射为.properties文件,如下所示:

  • 内部.properties文件(有一些默认格式映射)。
  • 外部.properties文件(dateformats.properties,客户端可将其添加到其应用程序CLASSPATH以扩展库提供的默认格式映射的文件)。

从库CLASSPATH读取内部.properties文件很简单,但如何让库从客户端CLASSPATH读取外部.properties文件?

1 个答案:

答案 0 :(得分:2)

您可以选择多少选项:

  • 让客户端指定您将使用的Properties实例(因此您的API会将java.util.Properties作为其中一个参数输入)
  • 在类路径中搜索其他.properties文件并更喜欢客户端的文件(获取java.class.path属性并搜索jar条目或inventive with getResources method
  • 使用客户端的类加载器(执行此操作的一种方法是检查堆栈并确定客户端的类,然后访问它的类加载器,另一种方法是让客户端将其作为参数传递)

每种方法都有其优点和缺点,这取决于您的需求......