fix(tomcat): resolve the WAR artifact of the selected Maven module (#529)

A Tomcat run with a WAR from a nested Maven module failed with "The built WAR artifact does not exist": the artifact path query was evaluated for the reactor parent, not the selected module.

The build now resolves the selected POM's effective identity first, using the same options and environment as the build, and asks for that project's artifact. Custom outputs, .mvn settings and root modules are covered, Gradle WAR manifests are written as UTF-8, and Tomcat deployment errors now name the checked path.

Fixes #515
Цей коміт міститься в:
l0ng-ai authored and GitHub committed 2026-10-31 12:08:27 +08:00
1 джерело 290abd303e
коміт 53bebe4836
11 files changed
+340 -23

No files matched your search

+3 -2
Переглянути файл
@@ -4936,9 +4936,10 @@
"Choose a Gradle WAR module": "请选择 Gradle WAR 模块",
"Build the selected WAR artifact before launching Tomcat": "请先构建所选 WAR 构件,再启动 Tomcat",
"Build the WAR artifact before launching Tomcat": "请先构建 WAR 构件,再启动 Tomcat",
"The built WAR artifact does not exist": "构建的 WAR 构件不存在",
"The built WAR artifact does not exist: {path}": "构建的 WAR 构件不存在:{path}",
"Cannot resolve Maven WAR artifact: {details}": "无法解析 Maven WAR 构件:{details}",
"Choose a WAR file or exploded directory": "请选择 WAR 文件或展开目录",
"Invalid Tomcat deployment": "无效的 Tomcat 部署",
"Invalid Tomcat deployment: {path}": "无效的 Tomcat 部署:{path}",
"Unknown Tomcat deployment type": "未知的 Tomcat 部署类型",
"Choose a Tomcat installation directory": "请选择 Tomcat 安装目录",
"HTTP port must be between 1 and 65535": "HTTP 端口必须介于 1 和 65535 之间",