Java Tomcat 9指定配置文件夹路径
我在Tomcat 9中运行一个需要读取几个.config文件的应用程序,但是我得到了一个Java Tomcat 9指定配置文件夹路径,java,tomcat,Java,Tomcat,我在Tomcat 9中运行一个需要读取几个.config文件的应用程序,但是我得到了一个java.io.IOException 这些.config文件位于WebContent文件夹中 如何让Tomcat阅读此路径? 是否可以与项目的IntelliJ设置相关 以下是加载配置文件的方式: ClassLoader classLoader = Thread.currentThread().getContextClassLoader(); InputStream is = classLoader.ge
java.io.IOException
这些.config文件位于WebContent
文件夹中
如何让Tomcat阅读此路径?
是否可以与项目的IntelliJ设置相关
以下是加载配置文件的方式:
ClassLoader classLoader = Thread.currentThread().getContextClassLoader();
InputStream is = classLoader.getResourceAsStream(this.configFile);
this.configFile的值为:cnp filter.config
ClassLoader classLoader = getClass().getClassLoader();
InputStream input = classLoader.getResourceAsStream("your absolute path ");
这可能会有帮助。类路径资源需要位于
WEB-INF/classes
下。对于maven项目,请将配置文件放在src/main/resources
下
或者,直接在
WEB-INF
下的资源可以通过ServletContext#getResourceAsStream(字符串路径)
访问您需要从类路径而不是从文件系统获取它们。看,是的,它是从classpath@michal获取的。你能给我们看一下用来读取这些资源的代码吗?此外,您还可以显示错误产生的确切堆栈跟踪吗?从JDK 9 JavaDoc开始,ClassLoader.getResourceAsStream()实际上不会抛出IOException。我确实在添加它。奇怪的是,该代码以前在WebSphere服务器上运行。@Michal我在文章中添加了它。是的,我使用的是相同的,但仍然存在问题。请尝试给出完整路径。配置文件位于Webcontent文件夹中,我应该放在哪里?src/main/resources
,前提是它是maven项目?如果不是maven项目,则为Java类的默认包。我没有src/main/resources,但有projectName/resources/,该怎么办?