从应用程序类路径载入配置文件
问题描述:
我使用getClass().getResourceAsStream()
载入配置文件窗体应用程序类路径。从应用程序类路径载入配置文件
当使用apache tomcat服务器启动应用程序时,加载该文件。
当我在服务器正在运行时对配置文件进行一些更改时,它没有收到更改。
我可能需要在应用程序运行时进行一些更改。 apache tomcat有没有办法在配置文件被更改后加载配置文件?
答
我假设你正在重新阅读文件,但即使你改变了它,你仍然看到相同的内容?
现在,我会在每次轮询文件时打印出内容,以便您可以看到a)正在轮询文件,以及b)内容不变。
另一种可能性是,当你构建一个应用程序时,一个配置文件可能会在很多地方结束,例如,在多个JAR中或在您的文件系统上。根据您的类路径,可能是您正在更改的文件不是您正在阅读的文件。即是类路径中的第一个目录。
编辑:你可以登录的网址,getClass().getResource(fileName)
,因为这会显示文件加载的位置?
当我构建应用程序时,配置文件位于tomcat \ webapps \ projName \ WEB-INF \ classes \ config-file中。我确信应用程序正在从上述路径获取文件,但是我的问题是它只加载一次文件,并且每次拨打电话时都不会重新读取文件。 – aswin 2012-03-14 11:28:26
你可以试试我的编辑? – 2012-03-14 11:30:48
我试过你的建议,我得到的结果是文件:/ C:/apache-tomcat-7.0.23-64bit/apache-tomcat7.0.23/webapps/proj/WEB-INF/classes/image_manifest.xml。它是相同的路径,我改变了配置文件 – aswin 2012-03-14 11:47:16