如何在Ubuntu中安装VSCode Extensions

问题描述 投票:0回答:2

我正在尝试运行一个使用Microsoft.Quantum.Extensions.Convert的Q#程序,我添加到我的项目文件中并将其包含在代码中,但是当我运行'dotnet run'时,我得到'/ workspace / QSharp / QSharpTest / QSharpTest.csproj:错误NU1101:无法找到包Microsoft.Quantum.Extensions.Convert。源中没有包含此id的包:nuget.org'。

QSharpTest.csproj

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.0</TargetFramework>
    <PlatformTarget>x64</PlatformTarget>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.Quantum.Canon"/>
    <PackageReference Include="Microsoft.Quantum.Development.Kit"/>
    <PackageReference Include="Microsoft.Quantum.Extensions.Convert"/>
  </ItemGroup>

</Project>

Operations.qs

namespace QSharpTest
{
    open Microsoft.Quantum.Canon;
    open Microsoft.Quantum.Primitive;
    open Microsoft.Quantum.Development.Kit;
    open Microsoft.Quantum.Extensions.Convert;

    operation HelloQ () : Unit {
        let hello = GetHello();
        Message(hello);
        let multiple = multiply(2, 3);
        Message(ToStringI(multiple));
    }
    function GetHello () : (String) {
        return "Hello";
    }
    function multiply (a : Int, b : Int) : (Int) {
        return a*b;
    }
}
visual-studio-code ubuntu-18.04 q#
2个回答
1
投票

Microsoft.Quantum.Extensions.Convert是一个命名空间,但它不是一个单独的NuGet包 - 它包含在Microsoft.Quantum.Development.Kit包中。您应该在项目文件中包含对Microsoft.Quantum.Development.Kit的包引用。你可以在existing Q# projects看到例子。

要自动执行此操作,您可以从头开始创建项目作为Q#项目(如in the documentation所述) - 这将自动创建必要的包引用:

dotnet new console -lang Q# --output MyProject

更新:要解决您更新的问题,

  1. 你的csproj文件中不需要<PackageReference Include="Microsoft.Quantum.Extensions.Convert"/> - 这是命名空间,而不是包名。
  2. 您的Q#文件中不需要open Microsoft.Quantum.Development.Kit; - 这是包名,而不是命名空间。
  3. 您可能需要在csproj文件中使用NuGet包的版本:

<PackageReference Include="Microsoft.Quantum.Canon" Version="0.4.1901.3104" /> <PackageReference Include="Microsoft.Quantum.Development.Kit" Version="0.4.1901.3104" />


0
投票

你愿意提供你QSharpTest.csproj文件的内容吗?听起来你已经添加了Microsoft.Quantum.Extensions.Convert作为<PackageReference />,但正如该错误所说,没有这样的包 - 你可能想在你的Q#源文件本身中使用open语句:

namespace QSharp.Test {
    open Microsoft.Quantum.Primitives;
    open Microsoft.Quantum.Canon;
    open Microsoft.Quantum.Extensions.Convert;

    // ...

}

至于标题中的问题,Visual Studio Code扩展可以在Ubuntu上以与macOS或Windows 10相同的方式安装。有关详细信息,请参阅Quantum Development Kit documentation,但有一种方法是转到Quantum Development Kit extension page上的Visual Studio Code marketplace和按“安装”。

© www.soinside.com 2019 - 2024. All rights reserved.