我们将所有已编译的程序集复制到postbuild步骤(d:\ c \ bin \ assemblies)中的一个输出文件夹中。在编译时使用指向精确输出文件夹的注册表项找到使用Windows和Microsoft .NET框架对此目录中程序集的引用:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v2.0.50727\AssemblyFoldersEx\OutputFolder1]
@="d:\\c\\bin\\assemblies"
使用Windows和Mono我成功通过在运行xbuild之前设置环境变量ReferencePath。
SET ReferencePath=d:\c\bin\assemblies\
反正。这在linux下不起作用。在我看来,没有评估ReferencePath变量。任何人都可以阐明我如何设置一个路径让Mono在编译时为linux寻找程序集?
答案 0 :(得分:1)
在运行时,Mono会在三个位置查找运行程序所需的程序集。它首先搜索正在执行的程序集的位置。
... [切割]
如果在那里找不到所需的程序集,Mono将搜索MONO_PATH环境变量
... [切割]
要在Linux中设置此变量,如果使用bash shell,请键入:
导出MONO_PATH = / path / to / assemblies:/ another / path / to / assemblies
最后,如果仍未找到程序集,Mono将搜索全局程序集缓存(GAC),即共享程序集的存储库