DLLNotFoundException:xxx tolua... 错误打印

DLLNotFoundException:xxx tolua... 错误打印

  • 一、DLLNotFoundException介绍
  • 二、Plugins文件夹
    • 文件目录结构如下:
  • 三、Plugins中的Android文件夹
  • 四、Plugins中的IOS文件夹这里不说了没测试过不过原理应该也是选择对应的平台即可
  • 五、Plugins中的x86和X86_64文件夹

一、DLLNotFoundException介绍

首先区分一个问题只要是与DLLNotFoundException相关的必然是丢失了DLL文件,不管是安卓还是Window还是Mac原理都是一样的。

二、Plugins文件夹

既然是跟DLLNotFoundException相关,必然是与Plugins文件夹相关,原因是因为Plugins文件夹中存放了我们使用插件的兼容dll,只有Plugins文件夹包含了对应平台的.dll或者.so文件才能让我们的插件正常使用。

文件目录结构如下:

这些是我们常用平台的一些目录文件结构
在这里插入图片描述

三、Plugins中的Android文件夹

用其中一个为例子
在这里插入图片描述
对应在Android文件夹中的文件后缀大部分为.so文件(之前安卓打包处理了半天这个问题,因为SVN更新不到这个后缀为.so的文件,所以一直在报DLLNotFoundException:tolua的错误,后来才意识到),平台选择的画直接选择Android即可,CPU选择与文件夹对应的即可(这个例子中对应的文件夹是arm64-v8a,所以对应的是ARM64)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
armeabi-v7a文件夹和X86文件夹同理只需要将文件的CPU改为对应的ARMv7和X86即可

这里再说一下打包apk的时候有时候会有两个相同的文件冲突比如说x86和x86_64中的两个文件一样,直接删除即可 因为你安卓手机用不到X86和X86_64的文件

四、Plugins中的IOS文件夹这里不说了没测试过不过原理应该也是选择对应的平台即可

五、Plugins中的x86和X86_64文件夹

Window平台下用x86中一个为例子,这个文件夹中的文件大部分为DLL文件,选择平台的时候用Any Platforms即可
在这里插入图片描述
平台CPU和OS修改如下
编辑器模式下的文件夹如下选择

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果是X86_64的,直接将上述的X_86全部替换为X86_64即可

你可能感兴趣的:(Unity,Lua,DLLNotFound,tolua,lua的dll报错)