Tugas ResolveAssemblyReference
Menentukan semua rakitan yang bergantung pada rakitan yang ditentukan, termasuk dependensi urutan kedua dan ke n
. Lihat juga Memecahkan masalah kesalahan build dengan referensi rakitan.
Parameter
Tabel berikut ini menjelaskan parameter tugas ResolveAssemblyReference.
Parameter | Deskripsi |
---|---|
AllowedAssemblyExtensions |
Parameter String[] opsional.Ekstensi nama file rakitan yang dapat digunakan saat menyelesaikan referensi. Ekstensi nama file default adalah exe dan dll . |
AllowedRelatedFileExtensions |
Parameter String[] opsional.Ekstensi nama file yang digunakan untuk pencarian file yang terkait satu sama lain. Ekstensi default adalah pdb dan xml . |
AppConfigFile |
Parameter String opsional.Menentukan file app.config untuk mengurai dan mengekstrak pemetaan bindingRedirect. Jika parameter ini ditentukan, parameter AutoUnify harus false . |
Assemblies |
Parameter ITaskItem[] opsional.Menentukan item yang mana jalur lengkap dan dependensinya harus diidentifikasi. Item ini dapat memiliki nama sederhana seperti "System" atau nama yang kuat seperti "System, Version=2.0.3500.0, Culture=netral, PublicKeyToken=b77a5c561934e089". Item yang diteruskan ke parameter ini mungkin secara opsional memiliki metadata item berikut: - Private : Nilai Boolean . Jika true , maka item disalin secara lokal. Nilai defaultnya adalah true .- HintPath : Nilai String . Menentukan jalur dan nama file yang akan digunakan sebagai referensi. Metadata ini digunakan ketika {HintPathFromItem} ditentukan dalam SearchPaths parameter . Nilai {i>default-- SpecificVersion : Nilai Boolean . Jika true , maka nama yang tepat yang ditentukan dalam atribut Include harus cocok. Jika false , maka rakitan apa pun dengan nama sederhana yang sama berfungsi. Jika SpecificVersion tidak ditentukan, maka tugas memeriksa nilai dalam Include atribut item. Jika atribut adalah nama sederhana, atribut bersifat seolah-olah SpecificVersion adalah false . Jika atribut adalah nama yang kuat, atribut tersebut bersifat seolah-olah SpecificVersion adalah true .Saat digunakan dengan jenis item Referensi, atribut Include harus menjadi nama fusi lengkap dari rakitan yang akan diselesaikan. Rakitan hanya diselesaikan jika fusi sama persis dengan atribut Include .Saat proyek menargetkan versi .NET Framework dan mereferensikan rakitan yang dikompilasi untuk versi .NET Framework yang lebih tinggi, referensi hanya diselesaikan jika telah SpecificVersion diatur ke true .Saat proyek menargetkan profil dan mereferensikan rakitan yang tidak ada di profil, referensi hanya menyelesaikan jika telah SpecificVersion diatur ke true .- ExecutableExtension : Nilai String . Saat ada, rakitan yang diselesaikan harus memiliki ekstensi ini. Ketika tidak ada, dll dipertimbangkan terlebih dahulu, diikuti oleh .exe , untuk setiap direktori yang diperiksa.- SubType : Nilai String . Hanya item dengan metadata kosong SubType yang diselesaikan menjadi jalur rakitan penuh. Item dengan metadata yang tidak SubType ada diabaikan.- AssemblyFolderKey : Nilai String . Metadata ini didukung untuk tujuan warisan. Ini menentukan kunci registri yang ditentukan pengguna, seperti hklm\<VendorFolder>, dengan Assemblies harus digunakan untuk mengatasi referensi rakitan. |
AssemblyFiles |
Parameter ITaskItem[] opsional.Menentukan daftar rakitan yang sepenuhnya memenuhi syarat untuk menemukan dependensi. Item yang diteruskan ke parameter ini mungkin secara opsional memiliki metadata item berikut: - Private : Nilai opsional Boolean . Jika true, item disalin secara lokal.- FusionName : Metadata String opsional. Menentukan nama sederhana atau kuat untuk item ini. Jika atribut ini ada, atribut ini dapat menghemat waktu karena file assembly tidak harus dibuka untuk mendapatkan nama. |
AssemblyInformationCacheOutputPath |
Parameter String opsional.Jika tidak null, menserialisasikan informasi agnostik mesin tentang input AssemblyFiles ke file bernama. Pengaturan ini mengambil alih cache biasa, jadi hanya gunakan pengaturan ini jika Anda membangun SDK dengan banyak referensi dan berniat untuk mengirimkan cache ke pelanggan Anda. |
AssemblyInformationCachePaths |
Parameter ITaskItem opsional. Jika tidak null, gunakan kumpulan cache ini sebagai input jika MSBuild tidak dapat menemukan cache biasa di folder obj. Biasanya disediakan oleh SDK untuk meningkatkan performa build pertama. |
AutoUnify |
Parameter Boolean opsional.Parameter ini digunakan untuk membangun rakitan, seperti DLL, yang tidak dapat memiliki file App.Config normal. Jika true , grafik dependensi yang dihasilkan secara otomatis diperlakukan seolah-olah ada file App.Config yang diteruskan ke parameter AppConfigFile. File App.Config virtual ini memiliki entri bindingRedirect untuk setiap set rakitan yang bertentangan sehingga rakitan versi tertinggi dipilih. Konsekuensi dari langkah ini adalah bahwa tidak akan pernah ada peringatan tentang rakitan yang bertentangan, karena setiap konflik akan telah terselesaikan.Ketika true , setiap remapping yang berbeda menghasilkan komentar prioritas tinggi yang menunjukkan versi lama dan baru dan itu AutoUnify adalah true .Ketika true , AppConfigFile parameter harus kosong.Jika false , tidak ada pemecahan ulang versi rakitan yang akan terjadi secara otomatis. Ketika ada dua versi rakitan, peringatan akan dikeluarkan.Jika false , setiap konflik yang berbeda antara versi yang berbeda dari rakitan yang sama menghasilkan komentar berprioritas tinggi. Komentar ini diikuti oleh satu peringatan. Peringatan memiliki kode kesalahan unik dan berisi teks yang berbunyi "Ditemukan konflik antara versi referensi dan rakitan dependen yang berbeda."Nilai defaultnya adalah false . |
CandidateAssemblyFiles |
Parameter String[] opsional.Menentukan daftar rakitan yang akan digunakan untuk proses pencarian dan resolusi. Nilai yang diteruskan ke parameter ini harus berupa nama file absolut atau nama file relatif proyek. Rakitan dalam daftar ini dipertimbangkan ketika SearchPaths parameter berisi {CandidateAssemblyFiles} sebagai salah satu jalur yang perlu dipertimbangkan. |
CopyLocalDependenciesWhenParentReferenceInGac |
Parameter Boolean opsional. Jika true, untuk menentukan apakah dependensi harus disalin secara lokal, salah satu pemeriksaan yang dilakukan adalah melihat apakah referensi induk dalam file proyek memiliki kumpulan metadata Privat. Jika diatur, maka nilai Privat digunakan sebagai dependensi. Jika metadata tidak diatur, maka dependensi melewati pemeriksaan yang sama dengan referensi induk. Salah satu pemeriksaan ini adalah melihat apakah referensi ada di GAC. Jika referensi ada di GAC, maka referensi tidak disalin secara lokal, karena diasumsikan berada di GAC pada komputer target. Hal ini hanya berlaku untuk referensi tertentu dan bukan dependensinya. Misalnya, referensi dalam file proyek yang ada di GAC tidak disalin secara lokal, tetapi dependensinya disalin secara lokal karena tidak ada di GAC. Jika false, referensi file proyek diperiksa untuk melihat apakah mereka berada di GAC, dan disalin secara lokal sebagaimana mewajibkan. Dependensi diperiksa untuk melihat apakah mereka berada di GAC dan juga diperiksa untuk melihat apakah referensi induk dari file proyek ada di GAC. Jika referensi induk dari file proyek ada di GAC, dependensi tidak disalin secara lokal. Apakah parameter ini benar atau salah, jika ada beberapa referensi induk dan salah satunya tidak ada di GAC, maka semuanya disalin secara lokal. |
CopyLocalFiles |
Opsional ITaskItem[] parameter output hanya-baca.Mengembalikan setiap file dalam parameter ResolvedFiles , ResolvedDependencyFiles , RelatedFiles , SatelliteFiles , dan ScatterFiles yang memiliki metadata item CopyLocal dengan nilai true . |
DependsOnNETStandard |
Boolean Parameter output . Apakah salah satu referensi utama yang diselesaikan bergantung pada .NET Standard. |
DependsOnSystemRuntime |
Boolean Parameter output . Apakah salah satu referensi utama yang diselesaikan bergantung pada System.Runtime. |
DoNotCopyLocalIfInGac |
Parameter Boolean opsional.Mengaktifkan mode warisan untuk penentuan CopyLocal. Jika true, rakitan yang direferensikan tidak akan disalin secara lokal jika ditemukan di GAC. Jika false, rakitan disalin secara lokal kecuali hanya ditemukan di GAC. Nilai defaultnya adalah false . |
FilesWritten |
Parameter output ITaskItem[] opsional.Berisi item yang ditulis ke disk. |
FindDependencies |
Parameter Boolean opsional.Jika true , dependensi ditemukan. Jika tidak, hanya referensi utama yang ditemukan. Nilai defaultnya adalah true . |
FindDependenciesOfExternallyResolvedReferences |
Parameter Boolean opsional.Paksa dependensi untuk dijalani bahkan ketika referensi ditandai dengan ExternallyResolved=true metadata. |
FindRelatedFiles |
Parameter Boolean opsional.Jika true , file terkait seperti pdb file dan xml file ditemukan. Nilai defaultnya adalah true . |
FindSatellites |
Parameter Boolean opsional.Jika true , rakitan satelit ditemukan. Nilai defaultnya adalah true. |
FindSerializationAssemblies |
Parameter Boolean opsional.Jika true , maka tugas mencari rakitan serialisasi. Nilai defaultnya adalah true . |
FullFrameworkAssemblyTables |
Parameter ITaskItem[] opsional.Menentukan item yang memiliki FrameworkDirectory metadata untuk mengaitkan daftar redist dengan direktori kerangka kerja tertentu. Jika asosiasi tidak dibuat, kesalahan dicatat. Logika resolve assembly reference (RAR) menggunakan direktori kerangka kerja target jika FrameworkDirectory tidak ditetapkan. |
FullFrameworkFolders |
Parameter System.String[] opsional.Menentukan folder yang berisi direktori RedistList. Direktori ini mewakili kerangka kerja lengkap untuk profil klien tertentu, misalnya, %programfiles%\reference assemblies\microsoft\framework\v4.0. |
FullTargetFrameworkSubsetNames |
Parameter String[] opsional.Berisi daftar nama subset bingkai target. Jika nama subset dalam daftar cocok dengan properti nama TargetFrameworkSubset , maka sistem mengecualikan subset kerangka kerja target tertentu pada waktu build. |
IgnoreDefaultInstalledAssemblyTables |
Parameter Boolean opsional.Jika true , maka tugas mencari dan menggunakan tabel rakitan tambahan yang diinstal (atau, "Daftar Redis") yang ditemukan di direktori \RedistList di bawah TargetFrameworkDirectories . Nilai defaultnya adalah false. |
IgnoreDefaultInstalledAssemblySubsetTables |
Parameter Boolean opsional.Jika true , maka tugas mencari dan menggunakan tabel subset rakitan tambahan yang diinstal (atau, "Daftar Subset") yang ditemukan di direktori \SubsetList di bawah TargetFrameworkDirectories . Nilai defaultnya adalah false. |
IgnoreTargetFrameworkAttributeVersionMismatch |
Parameter Boolean opsional.Jika true , maka tugas menyelesaikan rakitan yang menargetkan versi .NET Framework yang lebih tinggi daripada proyek saat ini. Nilai defaultnya adalah false , yang melewati referensi tersebut. |
IgnoreVersionForFrameworkReferences |
Parameter Boolean opsional.Jika referensi utama adalah rakitan kerangka kerja, abaikan informasi versinya dan selesaikan perakitan kerangka kerja dari kerangka kerja yang saat ini ditargetkan. |
InstalledAssemblySubsetTables |
Parameter ITaskItem[] opsional.Berisi daftar file XML yang menentukan rakitan yang diharapkan berada di subset target. Sebagai opsi, item dalam daftar ini dapat menentukan FrameworkDirectory metadata untuk mengaitkan InstalledAssemblySubsetTable dengan direktori kerangka kerja tertentu. Jika hanya ada satu TargetFrameworkDirectories elemen, maka item apa pun dalam daftar ini yang tidak memiliki FrameworkDirectory" metadata diperlakukan seolah-olah mereka diatur ke nilai unik yang diteruskan ke TargetFrameworkDirectories . |
InstalledAssemblyTables |
Parameter String opsional.Berisi daftar file XML yang menentukan rakitan yang diharapkan terinstal pada komputer target. Ketika InstalledAssemblyTables diatur, versi rakitan yang lebih lama dalam daftar digabungkan ke dalam versi yang lebih baru yang tercantum dalam XML. Selain itu, rakitan yang memiliki pengaturan InGAC='true' dianggap sebagai prasyarat dan diatur ke CopyLocal='false' kecuali ditimpa secara eksplisit.Sebagai opsi, item dalam daftar ini dapat menentukan FrameworkDirectory metadata untuk mengaitkan InstalledAssemblyTable dengan direktori kerangka kerja tertentu. Namun, pengaturan ini diabaikan kecuali nama Redist dimulai denganMicrosoft-Windows-CLRCoreComp .Jika hanya ada satu TargetFrameworkDirectories elemen, maka item apa pun dalam daftar ini yang tidak memiliki FrameworkDirectory metadata diperlakukan seolah-olah mereka diatur ke nilai unik yang diteruskanke TargetFrameworkDirectories . |
LatestTargetFrameworkDirectories |
Parameter String[] opsional.Menentukan daftar direktori yang berisi daftar redist untuk kerangka kerja terbaru yang dapat ditargetkan pada komputer. Jika ini tidak diatur, kerangka kerja tertinggi yang diinstal pada komputer untuk pengidentifikasi kerangka kerja target tertentu digunakan. |
OutputUnresolvedAssemblyConflicts |
Parameter Boolean opsional.Jika true , menghasilkan perakitan yang tidak terselesaikan bertentangan dengan kode diagnostik MSB3277 ke dalam output UnresolveAssemblyConflicts . |
ProfileName |
Parameter String opsional.Menentukan nama profil kerangka kerja yang akan ditargetkan. Misalnya, Klien, Web, atau Jaringan. Hanya relevan untuk profil .NET Framework. |
RelatedFiles |
Opsional ITaskItem[] parameter output hanya-baca.Berisi file terkait, seperti XML dan pdb file yang memiliki nama dasar yang sama dengan referensi.File yang tercantum dalam parameter ini mungkin secara opsional berisi metadata item berikut: - Primary : Nilai Boolean . Jika true , maka item file diteruskan ke array dengan menggunakan parameter Assemblies . Nilai default false .- CopyLocal : Nilai Boolean . Menunjukkan apakah referensi yang diberikan harus disalin ke direktori output. |
ResolvedDependencyFiles |
Opsional ITaskItem[] parameter output hanya-baca.Berisi jalur urutan n ke dependensi. Parameter ini tidak menyertakan referensi utama urutan pertama, yang terkandung dalam ResolvedFiles parameter .Item dalam parameter ini secara opsional berisi metadata item berikut: - CopyLocal : Nilai Boolean . Menunjukkan apakah referensi yang diberikan harus disalin ke direktori output.- FusionName : Nilai String . Menentukan nama untuk dependensi ini.- ResolvedFrom : Nilai String . Menentukan jalur pencarian harfiah tempat file ini diselesaikan. |
ResolvedFiles |
Opsional ITaskItem[] parameter output hanya-baca.Berisi daftar semua referensi utama yang diselesaikan ke jalur lengkap. Item dalam parameter ini secara opsional berisi metadata item berikut: - CopyLocal : Nilai Boolean . Menunjukkan apakah referensi yang diberikan harus disalin ke direktori output.- FusionName : Nilai String . Menentukan nama untuk dependensi ini.- ResolvedFrom : Nilai String . Menentukan jalur pencarian harfiah tempat file ini diselesaikan. |
ResolvedSDKReferences |
Parameter ITaskItem[] opsional.Daftar referensi SDK yang diselesaikan, yang berisi nama SDK, lokasi SDK, dan konfigurasi yang ditargetkan. Lokasi ini hanya dicari jika referensi memiliki metadata yang SDKName melekat padanya. |
SatelliteFiles |
Opsional ITaskItem[] parameter output hanya-baca.Menentukan berkas satelit yang ditemukan. File-file ini adalah CopyLocal=true jika referensi atau dependensi yang menyebabkan item ini ada adalah CopyLocal=true .Item dalam parameter ini secara opsional berisi metadata item berikut: - CopyLocal : Nilai Boolean . Menunjukkan apakah referensi yang diberikan harus disalin ke direktori output. Nilai ini adalah true jika referensi atau dependensi yang menyebabkan item ini ada memiliki nilai CopyLocal true .- DestinationSubDirectory : Nilai String . Menentukan direktori tujuan relatif untuk menyalin item ini. |
ScatterFiles |
Opsional ITaskItem[] parameter output hanya-baca.Berisi file scatter yang terkait dengan salah satu rakitan yang diberikan. Item dalam parameter ini secara opsional berisi metadata item berikut: - CopyLocal : Nilai Boolean . Menunjukkan apakah referensi yang diberikan harus disalin ke direktori output. |
SearchPaths |
Parameter String[] wajib.Menentukan direktori atau lokasi khusus yang dicari untuk menemukan file pada disk yang mewakili rakitan. Urutan di mana jalur pencarian dicantumkan penting. Untuk setiap perakitan, daftar jalur ditelusuri dari kiri ke kanan. Ketika file yang mewakili rakitan ditemukan, pencarian tersebut berhenti dan pencarian untuk perakitan berikutnya dimulai. Parameter ini menerima daftar nilai yang dibatasi titik koma yang dapat berupa jalur direktori atau nilai harfiah khusus dari daftar di bawah ini: - {HintPathFromItem} : Menginstruksikan tugas untuk memeriksa HintPath metadata item dasar.- {CandidateAssemblyFiles} : Menginstruksikan tugas untuk memeriksa file yang diteruskan melalui CandidateAssemblyFiles parameter .- {Registry: <AssemblyFoldersBase>, <RuntimeVersion>, <AssemblyFoldersSuffix>} : Menginstruksikan tugas untuk mencari di folder tambahan yang ditentukan dalam registri. <AssemblyFoldersBase>, <RuntimeVersion>, dan <AssemblyFoldersSuffix> harus diganti dengan nilai tertentu untuk lokasi registri yang akan dicari. Spesifikasi default dalam target umum adalah {Registry:$(FrameworkRegistryBase), $(TargetFrameworkVersion), $(AssemblyFoldersSuffix), $(AssemblyFoldersExConditions)}.- {AssemblyFolders} : Menginstruksikan tugas untuk menggunakan skema Visual Studio.NET 2003 finding-assemblies-from-registry.- {GAC} : Menginstruksikan tugas untuk mencari di Global Assembly Cache (GAC).- {RawFileName} : Menentukan tugas akan mempertimbangkan nilai Include item menjadi jalur dan nama file yang tepat. |
SerializationAssemblyFiles |
Opsional ITaskItem[] parameter output hanya-baca.Berisi rakitan serialisasi XML yang ditemukan. Item ini ditandai CopyLocal=true jika dan hanya jika referensi atau dependensi yang menyebabkan item ini ada adalah CopyLocal=true. CopyLocal metadata Boolean menunjukkan apakah referensi yang diberikan harus disalin ke direktori output. |
Silent |
Parameter Boolean opsional.Jika true , tidak ada pesan yang dicatat. Nilai defaultnya adalah false . |
StateFile |
Parameter String opsional.Menentukan nama file yang menunjukkan tempat menyimpan status build perantara untuk tugas ini. |
SuggestedRedirects |
Opsional ITaskItem[] parameter output hanya-baca.Berisi satu item untuk setiap identitas rakitan yang bertentangan yang berbeda, terlepas dari nilai parameter AutoUnify . Ini termasuk setiap budaya dan PKT yang ditemukan yang tidak memiliki entri yang cocok bindingRedirect dalam file konfigurasi aplikasi.Setiap item secara opsional berisi informasi berikut: - Include atribut: Berisi nama lengkap keluarga rakitan dengan nilai bidang Versi dari 0.0.0.0 - MaxVersion metadata item: Berisi nomor versi maksimum. |
SupportsBindingRedirectGeneration |
Parameter Boolean opsional.Atur ini ke true pada proyek yang didukung untuk menghasilkan pengalihan pengikatan secara otomatis (saat ini hanya didukung untuk proyek EXE). |
TargetedRuntimeVersion |
Parameter String opsional.Menentukan versi runtime yang akan ditargetkan, misalnya, 2.0.57027 atau v2.0.57027. |
TargetFrameworkDirectories |
Parameter String[] opsional.Menentukan jalur direktori bingkai target. Parameter ini diperlukan untuk menentukan CopyLocal status untuk item yang dihasilkan.Jika parameter ini tidak ditentukan, tidak ada item yang dihasilkan yang akan memiliki CopyLocal nilai true kecuali mereka secara eksplisit memiliki Private nilai true metadata pada item sumbernya. |
TargetFrameworkMoniker |
Parameter String opsional.untuk TargetFrameworkMoniker memantau, jika ada. Parameter ini digunakan untuk pengelogan. |
TargetFrameworkMonikerDisplayName |
Parameter String opsional.Nama tampilan TargetFrameworkMoniker untuk dipantau, jika ada. Parameter ini digunakan untuk pengelogan. |
TargetFrameworkSubsets |
Parameter String[] opsional.Berisi daftar nama subset bingkai target yang akan dicari di direktori kerangka kerja target. |
TargetFrameworkVersion |
Parameter String opsional.Versi kerangka kerja target proyek. Nilai default kosong, yang berarti tidak ada pemfilteran untuk referensi berdasarkan kerangka kerja target. |
TargetProcessorArchitecture |
Parameter String opsional.Arsitektur prosesor target yang disukai. Digunakan untuk menyelesaikan referensi Global Assembly Cache (GAC). Parameter ini dapat memiliki nilai x86 , IA64 , atau AMD64 .Jika parameter ini tidak ada, tugas pertama-tama mempertimbangkan rakitan yang cocok dengan arsitektur proses yang sedang berjalan. Jika tidak ada rakitan yang ditemukan, tugas mempertimbangkan rakitan di GAC yang memiliki nilai ProcessorArchitecture MSIL atau tidak ada nilai ProcessorArchitecture . |
UnresolvedAssemblyConflicts |
Opsional ITaskItem[] parameter output hanya-baca.Jika parameter OutputUnresolvedAssemblyConflicts adalah true , maka ini diatur ke daftar informasi tentang konflik yang belum terselesaikan yang biasanya akan dihasilkan dalam MSB3277. Jika tidak, kosong. |
UnresolveFrameworkAssembliesFromHigherFrameworks |
Parameter Boolean opsional.Jika diatur ke true , ini memaksa rakitan kerangka kerja dengan versi yang lebih tinggi atau sama dengan versi kerangka kerja target ke status yang belum terselesaikan. |
WarnOrErrorOnTargetArchitectureMismatch |
Parameter String opsional.Jika ada ketidakcocokan antara arsitektur prosesor target dan arsitektur referensi utama, ketika ini adalah Error , kesalahan dicatat; ketika Warning , peringatan dicatat; ketika None , tidak ada kesalahan atau peringatan yang dicatat. Default ke Warning . |
Peringatan
Peringatan berikut dicatat:
ResolveAssemblyReference.TurnOnAutoGenerateBindingRedirects
ResolveAssemblyReference.SuggestedRedirects
ResolveAssemblyReference.FoundConflicts
ResolveAssemblyReference.AssemblyFoldersExSearchLocations
ResolveAssemblyReference.UnifiedPrimaryReference
ResolveAssemblyReference.PrimaryReference
ResolveAssemblyReference.UnifiedDependency
ResolveAssemblyReference.UnificationByAutoUnify
ResolveAssemblyReference.UnificationByAppConfig
ResolveAssemblyReference.UnificationByFrameworkRetarget
Keterangan
Selain parameter yang tercantum di atas, tugas ini mewarisi parameter dari kelas TaskExtension, yang mewarisi sendiri dari kelas Task. Untuk daftar parameter tambahan ini dan deskripsinya, lihat kelas dasar TaskExtension.