我正在尝试创建一个dex
巨大的kotlin 命令行编译器jar ,这样我就可以在手机上开发(即编译)kotlin(in termux
)。
但dx
内存不足并被“杀死”。
那么,也许分成更小dex
的s,并作为multidex运行?(另外,关闭所有其他应用程序!)
分割成dex
s:将 jar 完全解压到文件中;与并行目录结构分开;然后申请为每个根dx
创建一个。dex
这行得通,我发现dx
最多可以处理 13MB 的类,并且我将总共 100MB 的类放入 9dex
秒。
指定多个dex
s todalvikvm
- 就像使用常规 java 的多个 jars。例如:
dalvikvm -cp sepdex_Main.dex:sepdex_Sep.dex sepdex.Main
注意:不是/system/bin/dalvikvm
, buttermux
的版本,它修复了 ld 库路径。
下一个问题是kotlinc
uses dynamicInvoke
,它需要sdk-level 26
(Android 8)。我有 Android 5.1,所以故事到此结束(对我来说)。