mkbundle不会使用随附的netmodule嵌入程序集

时间:2014-04-25 14:54:03

标签: mono saxon mkbundle

我正在尝试mkbundle一个Mono应用程序,它包括对Saxon程序集的引用。 saxon9.dll没有问题,但当我尝试包含saxon9api.dll时,它将无法构建:

Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'saxon9api, Version=9.1.0.8, Culture=neutral, PublicKeyToken=e1fdd002d5083fe6' or one of its dependencies. The system cannot find the file specified.
File name: 'saxon9api, Version=9.1.0.8, Culture=neutral, PublicKeyToken=e1fdd002d5083fe6'
  at System.AppDomain.Load (System.String assemblyString, System.Security.Policy.Evidence assemblySecurity, Boolean refonly) [0x00000] in <filename unknown>:0 
  at (wrapper remoting-invoke-with-check) System.AppDomain:Load (string,System.Security.Policy.Evidence,bool)
  at System.Reflection.Assembly.ReflectionOnlyLoad (System.String assemblyString) [0x00000] in <filename unknown>:0 
  at IKVM.Reflection.Universe.DefaultResolver (System.String refname, Boolean throwOnError) [0x00000] in <filename unknown>:0 
  at IKVM.Reflection.Universe.Load (System.String refname, IKVM.Reflection.Module requestingModule, Boolean throwOnError) [0x00000] in <filename unknown>:0 
  at IKVM.Reflection.Universe.Load (System.String refname) [0x00000] in <filename unknown>:0 
  at MakeBundle.QueueAssembly (System.Collections.Generic.List`1 files, System.String codebase) [0x00000] in <filename unknown>:0 

Saxon还有一个'netmodule'文件,saxon9api.netmodule。不完全确定这是什么,因为我以前从未遇到过这样的事情。但撒克逊没有它就行不通,我相信这就是导致它失败的原因。

如何捆绑此文件?

如果我无法捆绑它,有没有办法专门排除它,那么我可以继续将--deps选项与mkbundle一起使用?

1 个答案:

答案 0 :(得分:0)

Saxon 9.1现在已经很老了。那时我们需要使用一个netmodule文件,其中包含Saxon的已编译源代码并且已链接到Assembly。

在9.2以后的版本中,我们不再使用netmodule文件。你不能继续前进吗?

我不太清楚mkbundle是否可以包含网络模块。也许您应该尝试查看http://manpages.ubuntu.com/manpages/hardy/man1/mkbundle2.1.html

处的选项