亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Microsoft Azure Functions Nuget 包阻止 NET 庫打包到 Nuget

Microsoft Azure Functions Nuget 包阻止 NET 庫打包到 Nuget

C#
搖曳的薔薇 2022-07-10 10:39:42
我有一個以 net462 為目標的 NET 庫項目,其中包含一個Microsoft.NET.SDK.FunctionsNuget 包。問題是當我將我的項目打包到 Nuget 庫中時,除了沒有創建 .nupkg 之外,一切都成功了(清理、恢復、構建、打包)。如果我注釋掉相關代碼并去掉 Nuget 引用,我打包時會生成一個 nupkg 文件。我似乎遇到了這個問題:IN GITHUB也許?有問題的包 - https://www.nuget.org/packages/Microsoft.NET.Sdk.Functions我的直接問題是 - 這是一個可能的功能嗎?你能防止你的包裹被打包進 Nugets 嗎?我怎么會知道?;蛘邠Q句話說,這種情況(GitHub問題中描述的情況)是否可能?可能出了什么問題?謝謝!
查看完整描述

2 回答

?
楊__羊羊

TA貢獻1943條經驗 獲得超7個贊

我剛剛遇到了同樣的問題,dotnet pack沒有為.csproj使用該包的文件生成Microsoft.Functions.SDK包。

dotnet pack允許您提供MSBuild受尊重的參數,即使它沒有出現在他們的文檔中,因此您可以nuget通過在命令行上執行以下操作來強制生成包:

dotnet pack --configuration Release -property:IsPackable=true

函數 SDK 中似乎有一些代碼我沒有花時間去追蹤強制該IsPackable標志為 false 的代碼,無論.csproj.

如果您將來遇到這些問題,您可以通過將(將詳細程度設置為調試)dotnet附加到命令行命令來查看命令的診斷。-v=d


查看完整回答
反對 回復 2022-07-10
?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

第一步:打開項目文件夾

http://img1.sycdn.imooc.com//62ca3c140001985e04020538.jpg

第二步:打開cmd

http://img1.sycdn.imooc.com//62ca3c22000198a605840367.jpg

第 5 步:您應該看到一個指向您的項目而不是解決方案目錄的 cmd


http://img1.sycdn.imooc.com//62ca3c2c0001bbba06940347.jpg

第 6 步:復制并粘貼流動的命令

    PowerShell -Command "Get-ChildItem $dir | Where { $_.Name -match '.csproj'} | Select -Expand Name | out-file -encoding ASCII projectname"


    SET /p projectname=<projectname


    PowerShell -Command "(Get-Content -path ..\packages\Microsoft.NET.Sdk.Functions.1.0.24\build\netstandard1.0\Microsoft.NET.Sdk.Functions.Build.targets -Raw) -replace 'DependsOnTargets="""RunResolvePublishAssemblies"""', '' | Set-Content -Path  ..\packages\Microsoft.NET.Sdk.Functions.1.0.24\build\netstandard1.0\Microsoft.NET.Sdk.Functions.Build.targets"


    SET MSBuild_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin


    SET PATH=%MSBuild_PATH%;%PATH%


    MSbuild %projectname% /t:Clean;Rebuild /p:Configuration=Release


    PowerShell -Command "Get-ChildItem -Path .\bin\Release\bin -Recurse | Copy-Item -Destination .\bin\Release "


    PowerShell -Command "if(!(Test-Path -Path 'nuget.exe')){(new-object System.Net.WebClient).DownloadFile('https://dist.nuget.org/win-x86-commandline/latest/nuget.exe','nuget.exe')}"


    NuGet.exe pack %projectname% -Prop Configuration=Release -MSBuildPath "%MSBuild_PATH%"


    start .

第 7 步:你應該找到你的 nupkg 文件

http://img1.sycdn.imooc.com//62ca3c3d0001662a03410771.jpg

查看完整回答
反對 回復 2022-07-10
  • 2 回答
  • 0 關注
  • 119 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號