微软c#命令行编译器在外部目录中找不到.dll

本文关键字:找不到 dll 外部 命令行 编译器 微软 | 更新日期: 2023-09-27 18:04:11

我想在Linux终端上从命令行编译一个c#程序。我的csc.exe被添加到我的路径并正常工作。目录布局如下:

|-- Program.cs
|-- Otherfiles.cs
|-- bin
|    |-- Debug
|    |    |-- Newtonsoft.Json.dll

在顶部目录中,我使用以下命令进行编译:

csc *.cs /r:./bin/Debug/Newtonsoft.Json.dll
--> error CS2001: Source file 'r:bin/Debug/Newtonsoft.Json.dll' could not be found

是否有更好的方法来做我在这里想做的事情,或者我只需要将。dll文件复制到与Program.cs相同的目录中,就像在这个问题中所做的那样?

微软c#命令行编译器在外部目录中找不到.dll

/reference参数仅用于表示程序集的名称。

使用/lib参数指定其他目录来搜索汇编文件:

csc *.cs /r:Newtonsoft.Json.dll /lib:"./dir with spaces/need quotes", ./bin/Debug

使用/lib指定一个或多个程序集引用所在的目录。/lib主题还讨论了编译器搜索程序集的目录。