更新GCloud 437后含JSP文件项目执行appengineDeploy报posix权限错误
Google Cloud SDK 437.0.0 + Windows 11: appengineStage失败(含JSP文件时)报错"posix:permissions"不支持
更新Google Cloud SDK到437.0.0后,在Windows 11环境下用IntelliJ Idea Community搭配Gradle的Google Cloud App Engine插件执行appengineDeploy时,只要项目里有*.jsp文件,就会触发appengineStage任务失败,报错:
Unable to stage app: 'posix:permissions' not supported as initial attribute
删除JSP文件后命令可正常执行,本地运行appengineRun和explodeWar无异常。
环境信息
- Windows 11
- IntelliJ Idea Community + Gradle(使用Google Cloud App Engine Gradle插件)
- Google Cloud SDK 437.0.0
- app-engine-java 2.0.15
- app-engine-python 1.9.105
- bq 2.0.93
- cloud-datastore-emulator 2.3.0
- core 2023.06.26
- gcloud-crc32c 1.0.0
- gsutil 5.24
错误根源
错误日志显示,问题出在编译JSP创建临时目录时,Windows文件系统不支持posix权限属性,抛出UnsupportedOperationException异常。
可行解决方案
降级Google Cloud SDK版本
回退到436.0.0或更早版本,该版本未引入posix权限相关逻辑,可规避Windows兼容性问题。执行命令:gcloud components update --version 436.0.0修改Gradle配置禁用posix权限设置
在项目build.gradle中添加针对Windows环境的配置,关闭权限处理逻辑:appengine { stage { if (System.getProperty('os.name').toLowerCase().contains('windows')) { setPermissionsEnabled(false) } } }临时规避:预编译JSP再部署
- 先运行
explodeWar任务生成包含编译后JSP的war包 - 直接部署生成的war包,跳过
appengineStage中的JSP编译步骤
- 先运行
内容的提问来源于stack exchange,提问作者Helloworld
相关产品推荐
相关产品推荐

