問題タブ [copy-local]
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.
.net - copy-local を true に設定する必要がある場合とそうでない場合はいつですか?
いつ参照を設定するかについてのヒューリスティックがあるかどうか疑問に思っていcopy-local=true
ますか?
参照される型が内部でのみ使用される場合は設定できますcopy-local
がtrue
、参照される型がパラメーターまたは戻り値として公開されている場合、設定copy-local
しfalse
て、ライブラリを使用する必要があるときに依存関係の特定のバージョンを参照する必要があることを示しますか?
誰かが私のためにこれを明確にすることができますか?
visual-studio - 私の許可なしに、ビルド中に Visual Studio が DLL のコピーを停止するようにするにはどうすればよいですか?
複数の DLL 参照に依存する Visual Studio プロジェクトがあります。これは、私の csproj でのこれらの参照のサンプルです。
ただし、このクラスをプロジェクトの依存関係として Web サイト プロジェクトに含めると、Visual Studio は上記の依存関係の依存関係を検出します。ビルド中、Visual Studio は "Copy Local" プロパティを "True" にデフォルト設定し、これらの依存関係を Web サイトの ~/bin ディレクトリにコピーします。
これにより、このディレクトリに既に存在する DLL ファイルのバージョンが上書きされます。これにより、次のエラーが発生します。
ファイルまたはアセンブリ 'Class5.Project5, Version=3.6.1861.2, Culture=neutral, PublicKeyToken=dfeaee0e3978ac79' またはその依存関係の 1 つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(HRESULT からの例外: 0x80131040)
Visual Studio のデフォルトの "Copy Local" 設定をすべて"False" にするにはどうすればよいですか? ビルド中に Visual Studio で DLL ファイルを自動的にコピーしたくありません。また、ビルドを非常に特定のバージョンの DLLに結び付けたくもありません。
silverlight - Xap ファイルの内容は、Visual Studio またはビルド サーバーでビルドされた場合に変更されます
Silverlight 4 アプリで MEF を使用して、xap ファイルを動的に読み込みます。このプロセスを最適化するために、さまざまなアセンブリを xap から削除しました。それらはベース xap によって既に読み込まれていることがわかっているからです。これにより、動的にロードされた xap のサイズが縮小されます。これは、各アセンブリ参照の「ローカル コピー」フラグを「false」に設定することで実現しました。
Visual Studio 2010 でビルドすると、これはすべて正常に動作するように見えます。私の xap ははるかに小さいです。ただし、同じプロジェクトがビルド サーバーによってビルドされると、除外されたすべての参照が再び xap ファイルに含まれるため、xap のサイズが 3 倍になります。
同様の経験に関するいくつかのブログ/記事を読みましたが、解決策はありません。非常にイライラします - どんな助けでも大歓迎です。
visual-studio - デフォルトで「ローカルコピー」をFalseに設定しますか?
Visual Studioの「ローカルコピー」のデフォルトオプションをFalseに設定できますか?ほとんどの場合、プロジェクトの依存関係としてdllを追加するときは、ローカルコピープロパティをFalseに設定する必要があります。デフォルトでは、Trueです。Visual Studioのデフォルトの動作を変更する方法はありますか?(2008)
.net - ローカルおよびシステムdllをコピーします'-ポイントは何ですか?
Visual Studioは、デフォルトですべてのdllを各プロジェクトのbinフォルダーにコピーします。これには、System.Xml.Linq、System.ComponentModel.Composition(SL4以降に含まれる)などのシステムdll(mscorlib.dllとSystem.dllを除く)も含まれます。
これらのファイルは各XAPに含まれているため、XAPのサイズは大幅に大きくなります。私の限られたテストでは、「ローカルコピー」をfalseに設定しても何も壊れないようです。Visual Studioがこれらのファイルをbinパスに追加するのはなぜですか?ユーザーはすでにSilverlightを使用しているので、これらのアセンブリは各ユーザーのGACに既にインストールされていると思いますか、それとも何かが足りないのでしょうか。
.net - 間接参照をコピーする Visual Studio プロジェクト ファイルを作成する方法は?
スクリーンショットが示すように、ClassLibrary1 は ClassLibrary2 に依存し、ClassLibrary2 は ClassLibrary3 に依存しています。また、「ローカルにコピー」は「True」に設定されています。しかし、ClassLibrary1 をコンパイルすると、ClassLibrary3 は bin フォルダーにコピーされません。
では、間接参照をコピーするように Visual Studio プロジェクト ファイルを構成するにはどうすればよいでしょうか。
xml - ソリューションのビルド時にサード パーティの DLL の XML ファイル生成を抑制する
さて、自分のプロジェクトで XML ファイルの生成を無効にする方法を考え出しました ([コンパイル] -> [XML ドキュメント ファイルの生成])。XCopy の展開に必要な Copy Local = True のサードパーティ DLL もいくつかあります。それぞれが独自の XML をビルド フォルダーに作成します。サード パーティの DLL の XML ファイルの生成を抑制する方法はありますか? Visual Studio 2010 を使用しています。ありがとうございます。
visual-studio-2010 - ローカルにコピー - .dll がコピーされない
Visual Studio ソリューションに 3 つのプロジェクトがあります。プロジェクトの 1 つ (ドライバー) には、他の 2 つのプロジェクトによって生成された .dll への参照が含まれています。両方のコピー ローカル プロパティが true に設定されています。これらの .dll はいずれも、ドライバーの bin/Debug ディレクトリにコピーされません。それは起こるべきことではありませんか?
アセンブリが見つからないため、実行時エラーが発生します。
ちなみに、私の .dllは GACにありましたが、アンインストールしました。
.net - 「ローカルにコピー」する必要がある参照をどのように判断する必要がありますか?
多くの同様の投稿ですが、これは私が信じている重複ではありません。Visual Studioで参照を追加すると、一部のdllはローカルにコピーされますが、一部はコピーされません。
他の場所から取得した外部dllにはローカル参照が必要であることを理解していますが、Visual Studioの参照の長いリスト(.NETおよびCOM)から選択したものをローカルにコピーする必要はないと思います。私はしません。
COMからShell32を選択すると、dllがローカルにコピーされることに気付きました。デフォルトでは、「ローカルコピー」はtrueに設定されています。したがって、.NETは、COMが持つべきローカル参照を必要としないものであると想定しました。しかし、Office Interopオブジェクト(COM)を参照すると、それらがローカルにコピーされていないことがわかります。
一部はローカルにコピーされ、一部はコピーされないのはどうしてですか。(何かいいことを知りたい)
また、一般的に参照用に「ローカルコピー」プロパティを設定するにはどうすればよいですか?Visual Studioがデフォルトで実行することだけを実行することをお勧めしますか?
ありがとう。
wpf - XAMLでのみ使用されるアセンブリはbinフォルダーにコピーされません
WPFプロジェクトでは、この投稿で不満があるように、xamlでのみ使用される参照はCopyLocal
trueに設定されていてもbinフォルダーにコピーされません。MVVMパターンでは、サードパーティのコントロールがコードビハインド参照なしで使用されるのが一般的です。
この投稿に触発されて、私は以下の回避策を使用しています。簡単ですが、プロジェクト全体でXAMLファイルで実際に使用されている変数リストと同期して変数リストを手動で維持する必要があります。これらのファイルは常に変更される可能性があります。私の質問は、本当の解決策があるのか、それともより良い回避策があるのかということです。(私は、ビルド後のスクリプトを使用するという考えを知っています。これは、IMHOが発見しにくく、変更に対してより脆弱です。)