首页 新闻 会员 周边 捐助

升级到 .NET 9 后 build 时 NSwagExe_Net90 报错

0
悬赏园豆:30 [已解决问题] 解决于 2024-12-16 19:35

在 .csproj 中有下面的 Target

<Target Name="GenerateNSwag">
    <ItemGroup>
        <CurrentOpenApiReference>
            <Command>$(NSwagExe_Net90) nswag.json /variables:Input="%(FullPath)",Output="%(OutputPath)"</Command>
        </CurrentOpenApiReference>
    </ItemGroup>

    <Message Importance="high" Text="%0AGenerateNSwag:" />
    <Message Importance="high" Text="  %(CurrentOpenApiReference.Command)" />

    <Exec Command="%(CurrentOpenApiReference.Command)" LogStandardErrorAsError="true" />
</Target>

NSwag.ApiDescription.Client 版本是 14.2.0

<PackageReference Include="Microsoft.Extensions.ApiDescription.Client" Version="9.0.0">

build 时报错

  System.InvalidOperationException: The command 'nswag.json' could not be found.

GenerateNSwag 对应的命令如下:

  GenerateNSwag:
    dotnet "C:\Users\Administrator\.nuget\packages\nswag.msbuild\14.2.0\buildTransitive\../tools/Net90/dotnet-nswag.dll" nswag.json /variables:Input="C:\dev\account\src\Cnblogs.Account.WebApi\obj\Cnblogs.Account.WebApi.json",Output="obj\Cnblogs.Account.WebApiClient.cs"

请问如何解决这个问题?

dudu的主页 dudu | 高人七级 | 园豆:29642
提问于:2024-12-16 19:19
< >
分享
最佳答案
0

是不小心删除了 $(NSwagExe_Net90) 之后 nswag.json 之前的 run 命令引起的

<ItemGroup>
    <CurrentOpenApiReference>
        <Command>$(NSwagExe_Net90) run nswag.json /variables:Input="%(FullPath)",Output="%(OutputPath)"</Command>
    </CurrentOpenApiReference>
</ItemGroup>
dudu | 高人七级 |园豆:29642 | 2024-12-16 19:35
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册