問題タブ [dotnet-sdk]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
msbuild - Visual Studio はソリューション エクスプローラーの [依存関係] ノードにどのように入力しますか
特定の条件下で<PackageReference>
forの一部を置き換えるカスタム MSBuild ターゲットを作成しています。<ProjectReference>
次の msbuild ターゲットがあります。
私のプロジェクト参照は、Visual Studio の依存関係では見えません。ただし、プロジェクトは意図したとおりにコンパイルされます。
<ItemGroup>
ターゲットが の前に実行されると、 with <PackageReference>
inside target が尊重されることがわかりましたCollectPackageReferences
。<ProjectReference>
しかし、最初の目標も達成できませんでした。
Visual Studio は依存関係をソリューション プロジェクトでどのように埋めますか?
docker - Windows 10 から dotnet sdk linux docker イメージとマウントされたボリュームを使用して dotnet restore を実行する方法は?
最新の microsoft/dotnet SDK イメージ ( microsoft/dotnet:2.2.104-sdk-alpine3.8
) を使用して、.NET Standard プロジェクトの非常に単純なビルドをセットアップしています。
これは、既存のコードと既存のビルド インフラストラクチャを新しいリポジトリとビルド インフラストラクチャ (GitLab (ここではあまり重要ではありません)) に移行するためのものです。
もちろん、新しいビルド インフラストラクチャは Docker を活用しています。ただし、Docker を使用してローカルの Windows 10 でビルドできる必要もあります (特定のビルド コンピューターに依存せずに、GitLab を使用しなくても SW をビルドできることを証明するためにこれが必要です)。
私が試したのは、プロジェクト フォルダーを docker イメージにマウントしてから実行することdotnet restore
です。何が起こっているのかを理解するためにインタラクティブにやっています:
そしてコンテナ内:
私の解決策は非常に基本的です。次のようになります。
次のようになりClassLibrary1.csproj
ます(json.netを参照するだけです):
それでおしまい。
私は使用しています:
- Windows 10 エンタープライズ バージョン 1709
- Docker デスクトップ コミュニティ バージョン 2.0.0.3 (31259)
期待される結果は、dotnet の復元が問題なく機能することです。
実際の結果は私にとって驚くべきものです。
これが期待どおりに機能しない理由を知っている人はいますか? このように、マウントされたボリュームを復元することはできないのでしょうか?
注:同じ dotnet restore コマンドを Windows 10 コンピューターから直接実行すると、すべてが期待どおりに機能します。
アップデート
この問題は、「Windows コンテナー モード (実験的機能が有効)」を使用して Docker で Linux コンテナーを実行している場合にのみ発生します。私を混乱させているのは、コンテナ内からマウントされたフォルダで、新しいファイルを作成して書き込んだり、既存のファイルに追加したりできることです。それはどうしてですか?
.net-core - dotnet SDK 2.2.104 は .NET Core 2.2 をコンパイルしません
- .NET Sdk バージョン 2.1 以下を使用しています。
- sdk2.2 と sdk3 をインストールしました。
- sdk3を削除しました
これで、VS17 は私のソリューションを正常にビルドおよびテストします。
しかし、コマンド ラインから dotnet-cli を使用すると、ソリューションをコンパイルできませんsdk2.1
。
dotnet ビルド:
dotnet --info :
WebApi.csproj :