IntelliJ Web Facets识别Web资源目录错误问题求助
我太懂这种被IDE揪着一个不存在的目录反复提示的烦躁感了!明明Maven里都改了配置,它却死活不买账,给你几个亲测有效的解决步骤:
强制重新同步Maven配置
有时候IDE的缓存会拖后腿,右键你的项目 -> 选择Maven->Reload Project,或者点右侧Maven面板上的刷新按钮。如果还不行,试试Generate Sources and Update Folders For All Projects,这个会彻底重新生成项目结构,把旧配置清掉。明确配置Maven War插件
你之前加的<webappDirectory>可能优先级不够,IDE还是认War插件的默认配置。直接在pom.xml里给War插件指定目录:<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>3.3.2</version> <!-- 用最新稳定版即可 --> <configuration> <webappDirectory>${project.basedir}/assets</webappDirectory> </configuration> </plugin> </plugins> </build>这个配置会直接告诉Maven(以及IntelliJ)你的web资源目录是
assets,彻底覆盖默认的src/main/webapp。清理IntelliJ缓存
缓存是很多奇怪问题的根源,直接来狠的:点击File->Invalidate Caches...,选择Invalidate and Restart。重启后IDE会重新加载所有配置,大概率能把旧的目录提示彻底清除。检查项目结构和打包类型
虽然你说Maven会覆盖设置,但还是确认下:File->Project Structure->Modules,找到你的模块切换到Web标签,看看Web资源目录是不是已经同步成assets了。另外别忘了确认pom里的<packaging>是war——如果是jar的话,IDE不会把它当成Web项目处理,自然会沿用默认目录提示。
按这个顺序试下来,应该就能让IntelliJ乖乖跟着你的Maven配置走了!
内容的提问来源于stack exchange,提问作者mjs

