Laravel定时任务邮件无法读取新增JSON语言文件值求助
解决方案
清除语言与配置缓存
执行以下命令彻底清除相关缓存:php artisan cache:clear php artisan config:clear php artisan lang:clear # Laravel 9+ 专属命令,用于清除语言包缓存低于Laravel 9的版本,可手动删除
bootstrap/cache目录下的所有缓存文件。清除视图缓存
邮件模板的Blade缓存可能未更新,执行:php artisan view:clear确保队列Worker完全重启
若使用Supervisor等进程管理器管理队列,仅执行queue:restart可能无法终止旧进程,需重启Supervisor服务:sudo supervisorctl restart all若为手动启动的队列进程,需先杀掉旧进程(可通过
ps aux | grep queue:work找到进程ID后用kill命令终止),再重新启动:php artisan queue:work检查JSON语言文件格式
确认resources/lang/de.json中新增的键值对无语法错误(比如末尾多余逗号、引号不匹配),JSON格式严格,语法错误会导致新键无法被加载。可直接用编辑器的JSON校验功能检查文件完整性。确认邮件发送时的Locale设置
在邮件类的build方法或队列任务中,明确设置德语环境,避免使用默认Locale:use Illuminate\Support\Facades\App; // 在邮件类的build方法中添加 public function build() { App::setLocale('de'); return $this->view('mails.your-template'); }
内容的提问来源于stack exchange,提问作者MrtAkz
相关产品推荐
相关产品推荐

