27 lines
996 B
C#
27 lines
996 B
C#
using System;
|
||
using System.Collections.Generic;
|
||
using System.Linq;
|
||
using System.Text;
|
||
using System.Threading.Tasks;
|
||
|
||
namespace HybridCLR.Editor.Meta
|
||
{
|
||
public abstract class AssemblyResolverBase : IAssemblyResolver
|
||
{
|
||
public string ResolveAssembly(string assemblyName, bool throwExIfNotFind)
|
||
{
|
||
if (TryResolveAssembly(assemblyName, out string assemblyPath))
|
||
{
|
||
return assemblyPath;
|
||
}
|
||
if (throwExIfNotFind)
|
||
{
|
||
throw new Exception($"resolve assembly:{assemblyName} 失败! 如果是热更新dll找不到,请先运行`HybridCLR/CompileDll/ActiveBuildTarget`编译生成热更新dll。如果是AOT dll找不到,请先运行`HybridCLR/Generate/LinkXml`,接着在`Build Settings`中打包或者导出工程来生成AOT dll");
|
||
}
|
||
return null;
|
||
}
|
||
|
||
protected abstract bool TryResolveAssembly(string assemblyName, out string assemblyPath);
|
||
}
|
||
}
|