我试图使用容器映像在lambda函数中添加System.Drawing库。遵循AWS文档这里
已添加
RUN yum install -y amazon-linux-extras
RUN amazon-linux-extras install epel -y
RUN yum install -y libgdiplus 在Dockerfile里面。
当调用lambda时,我得到了一个错误
System.TypeInitializationException:--Gdip的类型初始化程序--引发了一个异常。System.PlatformNotSupportedException:在非Windows平台上不支持System.Drawing.Common .有关更多信息,请参见 https://aka.ms/systemdrawingnonwindows .
发布于 2022-03-19 18:09:38
问题是我正在使用的System.Drawing.Common包的版本。我已经将包的等级从6.0.0降到了4.7.0,错误消失了。
发布于 2022-03-19 18:45:43
您不需要将包的级别从v6.0.0降下来。在.NET 6中,可以通过将这一行添加到启动代码中(在调用任何依赖于GDI的代码之前)来解决这个问题:
AppContext.SetSwitch("System.Drawing.EnableUnixSupport", true);但请注意,在7.0.0及以上版本中,这是行不通的。Unix支持已经从7.0.0-预览.*版本中删除。
https://stackoverflow.com/questions/71523057
复制相似问题