安装Rakudo™ v2023.08后出现废弃代码警告的原因与解决方法
Rakudo v2023.08中.pm扩展名警告的原因及解决办法
警告原因
Rakudo v2023.08开始收紧了模块文件的规范:.pm扩展名已被标记为废弃的Raku模块格式,官方统一推荐使用.rakumod作为Raku模块的标准扩展名。你的/Users/jimbollinger/lib目录在Raku的库搜索路径里,里面存在.pm格式的文件,且没有通过META6.json明确声明这些是Raku模块,所以每次运行raku命令都会触发这个警告。
解决办法
- 替换文件扩展名:把
/Users/jimbollinger/lib下所有Raku模块的.pm后缀改成.rakumod。改完后要同步更新引用这些模块的脚本或代码里的路径,避免找不到模块。 - 添加META6.json声明:如果不想改扩展名,就在
/Users/jimbollinger/lib目录下创建META6.json文件,显式列出所有Raku模块。示例内容如下:
{ "name": "LocalLib", "version": "0.0.1", "authors": ["Your Name"], "provides": { "MyModule": "MyModule.pm", "Another::Module": "Another/Module.pm" } }
根据实际的模块名称和文件路径调整provides里的键值对即可。
- 移除目录出搜索路径(可选):如果这个目录里的
.pm文件不是Raku模块,而是其他语言的文件,可以把/Users/jimbollinger/lib从Raku的库搜索路径中删掉。终端执行以下命令临时生效:
export RAKULIB=$(echo $RAKULIB | tr ':' '\n' | grep -v '/Users/jimbollinger/lib' | tr '\n' ':')
要永久生效的话,把这条命令添加到你的shell配置文件(比如.bashrc或.zshrc)里。
内容的提问来源于stack exchange,提问作者Jim Bollinger
相关产品推荐
相关产品推荐

