【发布时间】:2015-04-16 09:25:35
【问题描述】:
我正在尝试使用 Mono 的 TextTransform.exe 在 Linux 上运行为 Windows 环境编写的 T4 模板。
我们有一个自定义程序集,提供模板中使用的一些实用功能,该模板构建在 MonoDevelop 中。我正在像这样运行 TextTransform.exe:
/usr/lib/monodevelop/AddIns/MonoDevelop.TextTemplating/TextTransform.exe \
-I=./IncludeScripts/ \
-P=./DataModelDefinition/Output/x86/Release/ \
-a='dataModelPath!./DataModel/DataModel.xml' \
-out=generation.log \
Templates/Process.tt
(0,0): ERROR Metadata file `DataModelDefinition.dll' could not be found
./DataModelDefinition/Output/x86/Release/ 文件夹确实包含 DataModelDefinition.dll,它在构建时不会出现警告或错误。我尝试使用-r=./DataModelDefinition/Output/x86/Release/DataModelDefinition.dll 在命令行上添加对程序集的显式引用,但没有区别。
这里有什么我遗漏的吗?
编辑:也试过export MONO_PATH=$(pwd)/DataModelDefinition/Output/x86/Release/,但没有区别。
【问题讨论】:
-
你是在TransForm.exe前面加了“mono -r=./DataModelDefinition/Output/x86/Release/DataModelDefinition.dll”还是给TransForm.exe加了参数?跨度>
-
你上面的建议给了
Unknown command line option: '-r=...'。在 TextTransform.exe 之后添加-r=...没有区别。 -
嗯,是的,它是 gmcs 的一个选项,而不是单声道。只需将该 dll 复制到该目录中即可。