使用arm64v8/dart Docker镜像编译时不支持Dart镜像

问题描述 投票:0回答:1

拥有一个纯 Dart 服务器应用程序,当前在类中使用“dart:mirrors”在运行时执行一些光反射工作。服务器应用程序在具有 x86 架构的开发 Ubuntu 机器中编译并运行得非常好,但是,相同的服务器应用程序无法使用最新的

arm64v8/dart:stable
Docker 映像作为 Ubuntu Raspberry pi 4 上的 Docker 构建的一部分进行编译。

Docker 构建错误:

---> Running in e4bdea430736\n\u001b[91merror: import of dart:mirrors is not supported in the current Dart runtime\n\u001b[0m\u001b[91mError: AOT compilation failed\n\u001b[0m\u001b[91mGenerating AOT snapshot failed!\u001b[0m\u001b[91m\n\u001b[0m

当前的 Arm64 架构版本的 Dart 是否不支持“dart:mirrors”?或者问题可能是其他的?

注意:服务器应用程序是纯 Dart 代码(即,据我所知,根本没有直接或间接通过依赖项使用 Flutter 代码)。

--- 更新 ---

Dockerfile编译说明:

FROM arm64v8/dart:stable AS build
WORKDIR /tmp
RUN dart pub get
RUN dart pub upgrade
RUN dart pub outdated
RUN dart compile exe /example.com/example_api/bin/server.dart -o /example.com/example_api/bin/server
docker dart arm64 raspberry-pi4
1个回答
0
投票

独立的可执行文件(exe)有局限性。其中之一是不支持 dart:mirrorsdart:developer

请检查文档,您可以尝试 JIT 快照或内核子命令,因为它们没有该限制。

© www.soinside.com 2019 - 2024. All rights reserved.