Microsoft C# 命令行编译器在外部目录中找不到 .dll
Microsoft C# command line compiler not finding .dll in external directory
我想在 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
相同的目录中,就像在 this question?
/reference
参数仅用于表示程序集的名称。
要指定其他目录来搜索程序集文件,请使用 /lib
参数:
csc *.cs /r:Newtonsoft.Json.dll /lib:"./dir with spaces/need quotes", ./bin/Debug
Use /lib to specify the directory in which one or more of your assembly references is located. The /lib topic also discusses the directories in which the compiler searches for assemblies.
我想在 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
相同的目录中,就像在 this question?
/reference
参数仅用于表示程序集的名称。
要指定其他目录来搜索程序集文件,请使用 /lib
参数:
csc *.cs /r:Newtonsoft.Json.dll /lib:"./dir with spaces/need quotes", ./bin/Debug
Use /lib to specify the directory in which one or more of your assembly references is located. The /lib topic also discusses the directories in which the compiler searches for assemblies.