读取不同模块中的属性文件

时间:2016-10-17 07:34:10

标签: maven properties

我班级中的静态方法必须读取位于另一个模块中的属性文件。

<ul>
    <li><i>icon<i> Text
        <ul>
            ...
        </ul>
    </li>
    <li><i>icon<i> Text
        <ul>
            ...
        </ul>
    </li>
    ...
<ul>

Util方法在module1中,而appconfig.properties在module2中。

两者的绝对路径是

Util.java:

public class Util
{
  private static void readProp()
  {
    Properties prop = new Properties();
    String fileName = "/appconfig.properties"; //File in another module
    InputStream inputStream = null;
    try
    {
      inputStream = ClassLoader.getSystemResourceAsStream(propFileName);
      if (inputStream != null)
       {
         prop.load(inputStream);
       }
    }
            catch(Exception e)
    {
        e.printStackTrace();
    }
  }
}

appconfig.properties:

/Users/user1/IdeaProjects/myProject/module1/src/main/java/com/microsoft/e3/cx/service/windows/search/util/Util.java

module2的pom将module1作为依赖项

/Users/user1/IdeaProjects/myProject/module2/appconfig/base/appconfig.properties 

我的inputStream总是为null。我想这是因为它无法找到这个文件。有关如何解决此问题的任何建议吗?

1 个答案:

答案 0 :(得分:0)

尝试,

Util.getClass().getResourceAsStream("appconfig.properties");