其他分享
首页 > 其他分享> > .net core3.1 文件导出报错The type initializer for 'Gdip' threw an exception 的解决方法

.net core3.1 文件导出报错The type initializer for 'Gdip' threw an exception 的解决方法

作者:互联网

.net core3.1 文件导出报错The type initializer for 'Gdip' threw an exception 的解决方法

.net core3.1 文件导出报错The type initializer for 'Gdip' threw an exception 的解决方法

 

.net Core允许在 Centos7 上,使用 System.Draw.Common类库时,报以下错误:

 "Class":"System.TypeInitializationException",
        "Message":"Unable to load DLL 'libgdiplus': The specified module could not be found.",
        "StackTrace":" at System.Drawing.SafeNativeMethods.Gdip.GdipCreateBitmapFromFile(String filename, IntPtr& bitmap)
at System.Drawing.Bitmap..ctor(String filename, Boolean useIcm)
at Ims.Dsl.Utility.ImageUtils.GetResolution(String filePath)
at Ims.Dsl.Persistence.Service.Impl.TemplateService.CreateUploadImage(IList`1 files, String createIp)
at Ims.Dsl.RestApi.Controllers.v1.TemplateController.UploadImage()

解决方案如下:

yum install autoconf automake libtool
yum install freetype-devel fontconfig libXft-devel
yum install libjpeg-turbo-devel libpng-devel giflib-devel libtiff-devel libexif-devel
yum install glib2-devel cairo-devel
git clone https://github.com/mono/libgdiplus
cd libgdiplus
./autogen.sh
make
make install

创建符号链接:

ln -s /usr/local/lib/libgdiplus.so /usr/lib64/libgdiplus.so
ln -s /usr/local/lib/libgdiplus.so /usr/libgdiplus.so

方法亲测有效

标签:exception,libgdiplus,String,System,devel,报错,install,Gdip,initializer
来源: https://blog.51cto.com/u_15078738/2971942