如何构建.java存放在WEB-INF/classes的Maven Web应用及解决无构建选项问题
问题原因
你的项目pom.xml没有放在根目录,而是存在于META-INF文件夹下,IDE默认只会扫描根目录下的pom.xml识别Maven项目,所以不会加载Maven相关的操作选项。
解决步骤
方法一:让IDE识别为Maven项目(适用可视化操作)
Eclipse/MyEclipse环境
- 右键点击项目根目录,选择 Configure → Convert to Maven Project
- 等待IDE完成依赖同步,刷新项目后即可在运行选项里找到Maven build相关入口
IntelliJ IDEA环境
- 右键点击META-INF目录下的
pom.xml文件,选择 Add as Maven Project - 等待依赖和项目结构同步完成即可
识别完成后,直接在Maven操作面板选择clean+package命令,即可完成构建,生成的war包默认存放在pom.xml所在目录的target文件夹下。
方法二:命令行构建(无需依赖IDE识别)
- 打开终端,切换路径到
pom.xml所在的META-INF目录 - 依次执行以下命令:
mvn clean mvn package
- 执行无报错的话,构建好的war包同样会输出到当前目录的target文件夹下。
可选优化
你当前的项目结构不符合Maven标准规范,如果后续要降低维护成本,可以调整为标准Maven Web项目结构:
- 将pom.xml移到项目根目录
- Java源码移动到
src/main/java路径- 静态资源、Web配置文件移动到
src/main/webapp路径
内容的提问来源于stack exchange,提问作者Karthik G Sarode
相关产品推荐
相关产品推荐

