![](/img/trans.png)
[英]Unable to load shared library when running on .NET interactive on Mac
[英]Migration to .net 6 Unable to load ICU library
我收到此錯誤
Exception message: Unable to load ICU library.;
Inner exception: ;
StackTrace: at DevExpress.Text.Interop.ICUInterop.LoadSharedLibrary(NativeLibraryLoader libraryLoader)
at DevExpress.Text.Interop.ICUInterop.<>c.<.cctor>b__9_0()
在遷移到.Net 6 后,在我的應用程序中將 html 轉換為 pdf 期間
我在 docker 容器 alpine.3.16-x64 中運行 .NET 6.0.7
FROM mcr.microsoft.com/dotnet/aspnet:6.0.7-alpine3.16
ARG APP_DIRECTORY
WORKDIR /app
RUN apk add --no-cache harfbuzz-icu ttf-opensans && \
apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.8/main libcrypto1.0 libssl1.0 && \
apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing libgdiplus-dev && \
apk add --no-cache icu icu-libs icu-dev icu-data-full icu-static icu-doc harfbuzz-icu harfbuzz-dev && \
rm -rf /tmp/* /var/cache/apk/*
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=true
我的 runtimeconfig.json
{
"configProperties": {
"System.Drawing.EnableUnixSupport": true,
"System.Globalization.Invariant": true
}
}
有人在從 5.0 升級到 6.0 的過程中遇到同樣的問題嗎?
問題出在ICU圖書館。 Alpine3.16有icu版本71
https://github.com/unicode-org/icu/releases/tag/release-71-1
所以我們降級到 alpine3.15,它的 icu 版本為 69,一切正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.