Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Artikel ini menjelaskan beberapa alasan umum dan kemungkinan solusi untuk kegagalan peluncuran aplikasi. Ini berkaitan dengan aplikasi yang bergantung pada kerangka kerja, yang mengandalkan penginstalan .NET pada komputer Anda.
Jika Anda sudah tahu versi .NET mana yang Anda butuhkan, Anda dapat mengunduhnya dari unduhan .NET.
Penginstalan .NET tidak ditemukan
Jika penginstalan .NET tidak ditemukan, aplikasi gagal diluncurkan dengan pesan yang mirip dengan:
You must install .NET to run this application.
App: C:\repos\myapp\myapp.exe
Architecture: x64
Host version: 7.0.0
.NET location: Not found
You must install .NET to run this application.
App: /home/user/repos/myapp/myapp
Architecture: x64
Host version: 7.0.0
.NET location: Not found
Ini mungkin karena mix-up paket.
Penginstalan global terdaftar di lokasi berikut: /etc/dotnet/install_location. Untuk informasi selengkapnya, lihat lokasi penginstalan.
You must install .NET to run this application.
App: /home/user/repos/myapp/myapp
Architecture: x64
Host version: 7.0.0
.NET location: Not found
Penginstalan global terdaftar di lokasi berikut: /etc/dotnet/install_location. Untuk informasi selengkapnya, lihat lokasi penginstalan.
Pesan kesalahan menyertakan tautan untuk mengunduh .NET. Anda dapat mengikuti tautan tersebut untuk masuk ke halaman unduhan yang sesuai. Anda juga dapat memilih versi .NET (ditentukan oleh Host version) dari unduhan .NET.
Pada halaman unduhan untuk versi .NET yang diperlukan, temukan unduhan .NET Runtime yang cocok dengan arsitektur yang tercantum dalam pesan kesalahan. Anda kemudian dapat menginstalnya dengan mengunduh dan menjalankan Alat Penginstal.
.NET tersedia melalui berbagai manajer paket Linux. Untuk informasi selengkapnya, lihat Menginstal .NET di Linux. (Versi pratinjau .NET biasanya tidak tersedia melalui manajer paket.)
Anda perlu menginstal paket .NET Runtime untuk versi yang sesuai, seperti dotnet-runtime6.
Atau, pada halaman unduhan untuk versi .NET yang diperlukan, Anda dapat mengunduh Biner untuk arsitektur yang ditentukan.
Kerangka kerja yang diperlukan tidak ditemukan
Jika kerangka kerja yang diperlukan atau versi yang kompatibel tidak ditemukan, aplikasi gagal diluncurkan dengan pesan yang mirip dengan:
You must install or update .NET to run this application.
App: C:\repos\myapp\myapp.exe
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '5.0.15' (x64)
.NET location: C:\Program Files\dotnet\
The following frameworks were found:
6.0.2 at [c:\Program Files\dotnet\shared\Microsoft.NETCore.App]
You must install or update .NET to run this application.
App: /home/user/repos/myapp/myapp
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '5.0.15' (x64)
.NET location: /usr/share/dotnet/
The following frameworks were found:
6.0.2 at [/usr/share/dotnet/shared/Microsoft.NETCore.App]
You must install or update .NET to run this application.
App: /home/user/repos/myapp/myapp
Architecture: x64
Framework: 'Microsoft.NETCore.App', version '5.0.15' (x64)
.NET location: /usr/local/share/dotnet/
The following frameworks were found:
6.0.2 at [/usr/local/share/dotnet/shared/Microsoft.NETCore.App]
Kesalahan menunjukkan nama, versi, dan arsitektur kerangka kerja yang hilang dan lokasi yang diharapkan untuk diinstal. Untuk menjalankan aplikasi, Anda dapat menginstal runtime yang kompatibel di ".NET location" yang ditentukan. Jika aplikasi menargetkan versi yang lebih rendah dari versi yang telah Anda instal dan Anda ingin menjalankannya pada versi yang lebih tinggi, Anda juga dapat mengonfigurasi perilaku roll-forward untuk aplikasi.
Menginstal runtime yang kompatibel
Pesan kesalahan menyertakan tautan untuk mengunduh kerangka kerja yang hilang. Anda dapat mengikuti tautan ini untuk masuk ke halaman unduhan yang sesuai.
Secara bergantian, Anda dapat mengunduh runtime dari halaman unduhan .NET . Ada beberapa unduhan runtime .NET.
Tabel berikut ini memperlihatkan kerangka kerja yang dimuat setiap runtime.
| Unduhan runtime bahasa umum | Kerangka kerja yang disertakan |
|---|---|
| ASP.NET Core Runtime | Microsoft.NETCore.App Microsoft.AspNetCore.App |
| Runtime Desktop .NET | Microsoft.NETCore.App Microsoft.WindowsDesktop.App |
| Runtime .NET | Microsoft.NETCore.App |
| Unduhan runtime bahasa umum | Kerangka kerja yang disertakan |
|---|---|
| ASP.NET Core Runtime | Microsoft.NETCore.App Microsoft.AspNetCore.App |
| Runtime .NET | Microsoft.NETCore.App |
Pilih unduhan runtime yang berisi kerangka kerja yang hilang, lalu instal.
Pada halaman unduhan untuk versi .NET yang diperlukan, temukan unduhan runtime yang cocok dengan arsitektur yang tercantum dalam pesan kesalahan. Anda mungkin ingin mengunduh Alat Penginstal.
.NET tersedia melalui berbagai manajer paket Linux. Lihat Menginstal .NET di Linux untuk detailnya. (Versi pratinjau .NET biasanya tidak tersedia melalui manajer paket.)
Anda perlu menginstal paket runtime .NET untuk versi yang sesuai, seperti dotnet-runtime6 atau dotnet-aspnet6.
Atau, pada halaman unduhan untuk versi .NET yang diperlukan, Anda dapat mengunduh Biner untuk arsitektur yang ditentukan.
Dalam kebanyakan kasus, ketika aplikasi yang gagal diluncurkan menggunakan penginstalan seperti itu, ".NET location" dalam pesan kesalahan menunjuk ke:
%ProgramFiles%\dotnet
/usr/share/dotnet/
/usr/local/share/dotnet/
Opsi lainnya
Ada opsi penginstalan dan solusi lain yang perlu dipertimbangkan.
Jalankan skrip dotnet-install
Unduh skrip dotnet-install untuk sistem operasi Anda. Jalankan skrip dengan opsi berdasarkan informasi dalam pesan kesalahan. Halaman referensi skrip dotnet-install menunjukkan semua opsi yang tersedia.
Luncurkan PowerShell dan jalankan:
dotnet-install.ps1 -Architecture <architecture> -InstallDir <directory> -Runtime <runtime> -Version <version>
Misalnya, pesan kesalahan di bagian sebelumnya akan sesuai dengan:
dotnet-install.ps1 -Architecture x64 -InstallDir "C:\Program Files\dotnet\" -Runtime dotnet -Version 5.0.15
Jika Anda mengalami kesalahan yang menyatakan bahwa menjalankan skrip dinonaktifkan, Anda mungkin perlu mengatur kebijakan eksekusi untuk memungkinkan skrip berjalan:
Set-ExecutionPolicy Bypass -Scope Process
Untuk informasi selengkapnya tentang penginstalan menggunakan skrip, lihat Menginstal dengan otomatisasi PowerShell.
./dotnet-install.sh --architecture <architecture> --install-dir <directory> --runtime <runtime> --version <version>
Misalnya, pesan kesalahan di bagian sebelumnya akan sesuai dengan:
./dotnet-install.sh --architecture x64 --install-dir /usr/share/dotnet/ --runtime dotnet --version 5.0.15
Untuk informasi selengkapnya tentang penginstalan menggunakan skrip, lihat Penginstalan skrip.
./dotnet-install.sh --architecture <architecture> --install-dir <directory> --runtime <runtime> --version <version>
Misalnya, pesan kesalahan di bagian sebelumnya akan sesuai dengan:
./dotnet-install.sh --architecture x64 --install-dir /usr/local/share/dotnet/ --runtime dotnet --version 5.0.15
Untuk informasi selengkapnya tentang penginstalan menggunakan skrip, lihat Menginstal .NET dengan skrip.
Mengunduh biner
Anda dapat mengunduh arsip biner .NET dari halaman unduhan. Dari kolom Biner dari unduhan runtime, unduh rilis biner yang cocok dengan arsitektur yang diperlukan. Ekstrak arsip yang diunduh ke ".NET location" yang ditentukan dalam pesan kesalahan.
Untuk informasi selengkapnya tentang penginstalan manual, lihat Menginstal .NET di Windows
Untuk informasi selengkapnya tentang penginstalan manual, lihat Menginstal .NET di Linux
Untuk informasi selengkapnya tentang penginstalan manual, lihat Menginstal .NET di macOS
Mengonfigurasi perilaku roll-forward
Jika Anda sudah memiliki versi kerangka kerja yang diperlukan yang lebih tinggi yang diinstal, Anda dapat membuat aplikasi berjalan pada versi yang lebih tinggi dengan mengonfigurasi perilaku roll-forward-nya.
Saat menjalankan aplikasi, Anda dapat menentukan --roll-forward opsi baris perintah atau mengatur DOTNET_ROLL_FORWARD variabel lingkungan.
Secara default, aplikasi memerlukan kerangka kerja yang cocok dengan versi utama yang sama dengan yang ditargetkan aplikasi, tetapi dapat menggunakan versi minor atau patch yang lebih tinggi. Namun, pengembang aplikasi mungkin telah menentukan perilaku yang berbeda. Untuk informasi selengkapnya, lihat Roll-forward aplikasi yang bergantung pada kerangka kerja.
Nota
Karena menggunakan opsi ini memungkinkan aplikasi berjalan pada versi kerangka kerja yang berbeda dari yang dirancang, ini dapat mengakibatkan perilaku yang tidak diinginkan karena perubahan antar versi kerangka kerja.
Perubahan mendasar
Pencarian multi-tingkat dinonaktifkan untuk .NET 7 dan yang lebih baru
Di Windows, sebelum .NET 7, aplikasi dapat mencari kerangka kerja di beberapa lokasi penginstalan.
Subdirektori relatif terhadap:
-
dotnetdapat dieksekusi saat menjalankan aplikasi melaluidotnet. -
DOTNET_ROOTvariabel lingkungan (jika diatur) saat menjalankan aplikasi melalui executable -nya (apphost).
-
Lokasi penginstalan terdaftar secara global (jika diatur) di
HKLM\SOFTWARE\dotnet\Setup\InstalledVersions\<arch>\InstallLocation.Lokasi
%ProgramFiles%\dotnetpenginstalan default (atau%ProgramFiles(x86)%\dotnetuntuk proses 32-bit pada Windows 64-bit).
Perilaku pencarian multi-tingkat ini diaktifkan secara default tetapi dapat dinonaktifkan dengan mengatur variabel DOTNET_MULTILEVEL_LOOKUP=0lingkungan .
Untuk aplikasi yang menargetkan .NET 7 dan yang lebih baru, pencarian multi-tingkat sepenuhnya dinonaktifkan dan hanya satu lokasi—lokasi pertama tempat penginstalan .NET ditemukan—dicari. Ketika aplikasi dijalankan melalui dotnet, kerangka kerja hanya dicari dalam subdirektori relatif terhadap dotnet. Ketika aplikasi dijalankan melalui executable (apphost), kerangka kerja hanya dicari di lokasi pertama yang tercantum sebelumnya di mana .NET ditemukan.
Untuk informasi selengkapnya, lihat Pencarian multi-tingkat dinonaktifkan.