从一个 .Net Core 项目创建 2 个独立的 exe?
Create 2 separate exes from one .Net Core project?
我有两个简单的独立命令行程序。每个都是一个源文件(比如 Program1.cs
& Program2.cs
),每个都包含一个 static void Main(..)
,每个都应该编译成一个独立的二进制文件。它们是相关的,所以为了简单起见,我想将它们放在一个目录中。
使用 .Net pre-Core,可以很容易地使用 csc Program<x>.cs
构建并生成 exe。
有没有办法在 .Net Core 中复制它?还是意味着 2 个独立的项目?到目前为止,我找不到在一个项目中生成 2 个二进制文件的方法,每个二进制文件都有一个单独的入口点。
谢谢。
--
- 这些是简单的演示。我知道它可能不代表典型的项目,在这些项目中会有多个源文件和一个入口点。然而,缩小到简单案例的能力也很重要。
你可以做的是为每个程序使用单独的配置,并在该配置中设置要编译的文件。
在您的情况下,project.json 的相关部分可能如下所示:
"configurations": {
"Program1": {
"buildOptions": {
"compile": {
"exclude": "Program2.cs"
}
}
},
"Program2": {
"buildOptions": {
"compile": {
"exclude": "Program1.cs"
}
}
}
}
然后您可以使用 dotnet build -c Program1
构建程序 1,使用 dotnet run -c Program1
构建程序 1 运行,程序 2 也类似。
我有两个简单的独立命令行程序。每个都是一个源文件(比如 Program1.cs
& Program2.cs
),每个都包含一个 static void Main(..)
,每个都应该编译成一个独立的二进制文件。它们是相关的,所以为了简单起见,我想将它们放在一个目录中。
使用 .Net pre-Core,可以很容易地使用 csc Program<x>.cs
构建并生成 exe。
有没有办法在 .Net Core 中复制它?还是意味着 2 个独立的项目?到目前为止,我找不到在一个项目中生成 2 个二进制文件的方法,每个二进制文件都有一个单独的入口点。
谢谢。
--
- 这些是简单的演示。我知道它可能不代表典型的项目,在这些项目中会有多个源文件和一个入口点。然而,缩小到简单案例的能力也很重要。
你可以做的是为每个程序使用单独的配置,并在该配置中设置要编译的文件。
在您的情况下,project.json 的相关部分可能如下所示:
"configurations": {
"Program1": {
"buildOptions": {
"compile": {
"exclude": "Program2.cs"
}
}
},
"Program2": {
"buildOptions": {
"compile": {
"exclude": "Program1.cs"
}
}
}
}
然后您可以使用 dotnet build -c Program1
构建程序 1,使用 dotnet run -c Program1
构建程序 1 运行,程序 2 也类似。