您好,我正在使用bash脚本从源中获取publish
文件夹,并将其放在另一个应用程序的文件夹中。
问题是,当我使用dotnet publish
时,publish
文件夹仅针对Debug
构建而创建。
即使我的项目位于Release
构建集中dotnet
命令会为Debug
生成。我在做什么错了?
Bash脚本
releasepath="D:\Work\redius\core\redius\bin\Release\netcoreapp2.1\publish"
destpath="D:\dotpeek"
rediuspath="D:\Work\redius"
curDir="$(pwd)\out.txt"
if [ ! -f curDir ];
then
touch $curDir
fi
echo $releasepath
rm -rf $destpath
mkdir $destpath
(cd $rediuspath && dotnet publish | $curDir && echo "done publishing")
echo "Copying from : ${releasepath} to ${destpath}"
cp -rf releasepath destpath
cd
我需要在脚本第一行中存在该文件夹。我尝试使用publish
中的vstudio
,但它创建了一个nupkg
文件。
答案 0 :(得分:1)
您必须使用dotnet build -c Release
构建项目。然后它将可以在发布模式下创建dll。
答案 1 :(得分:0)
dotnet publish
首先构建项目,然后发布。默认情况下,使用构建配置Debug
。
如果要使用构建配置Release
来构建项目,则必须指定-c
标志。
dotnet publish -c Release
https://docs.microsoft.com/en-us/dotnet/core/tools/dotnet-publish?tabs=netcore21
如果需要指定其他构建标志,则可以先构建项目,然后发布它。
dotnet build -c Release
dotnet publish --no-build