dotnet run
Bu makale şunlar için geçerlidir: ✔️ .NET Core 3.1 SDK ve sonraki sürümler
Veri Akışı Adı
dotnet run
- Açık derleme veya başlatma komutları olmadan kaynak kodu çalıştırır.
Özet
dotnet run [-a|--arch <ARCHITECTURE>] [-c|--configuration <CONFIGURATION>]
[-f|--framework <FRAMEWORK>] [--force] [--interactive]
[--launch-profile <NAME>] [--no-build]
[--no-dependencies] [--no-launch-profile] [--no-restore]
[--os <OS>] [--project <PATH>] [-r|--runtime <RUNTIME_IDENTIFIER>]
[--tl:[auto|on|off]] [-v|--verbosity <LEVEL>]
[[--] [application arguments]]
dotnet run -h|--help
Açıklama
komutu, dotnet run
uygulamanızı tek bir komutla kaynak koddan çalıştırmak için uygun bir seçenek sağlar. Komut satırından hızlı yinelemeli geliştirme için kullanışlıdır. komutu, kodu derlemek dotnet build
için komutuna bağlıdır. Derlemeye yönelik tüm gereksinimler de geçerlidir dotnet run
.
Not
dotnet run
gibi /property:property=value
bağımsız değişkenlere saygı göstermez.dotnet build
Çıkış dosyaları varsayılan konuma (olan bin/<configuration>/<target>
) yazılır. Örneğin, bir netcoreapp2.1
uygulamanız varsa ve çalıştırıyorsanız dotnet run
, çıktı içine bin/Debug/netcoreapp2.1
yerleştirilir. Dosyaların üzerine gerektiği gibi yazılır. Geçici dosyalar dizine obj
yerleştirilir.
Proje birden çok çerçeve belirtiyorsa, bu seçenek çerçeveyi belirtmek için kullanılmadığı sürece yürütülürken dotnet run
-f|--framework <FRAMEWORK>
hata oluşur.
komutu dotnet run
, derlenmiş derlemeler değil projeler bağlamında kullanılır. Bunun yerine çerçeveye bağımlı bir uygulama DLL'sini çalıştırmaya çalışıyorsanız, dotnet komutunu komut olmadan kullanmanız gerekir. Örneğin, komutunu çalıştırmak myapp.dll
için şunu kullanın:
dotnet myapp.dll
Sürücü hakkında dotnet
daha fazla bilgi için .NET Komut Satırı Araçları (CLI) konusuna bakın.
Uygulamayı çalıştırmak için komutu, dotnet run
NuGet önbelleğinden paylaşılan çalışma zamanının dışında olan uygulamanın bağımlılıklarını çözümler. Önbelleğe alınmış bağımlılıklar kullandığından, uygulamaları üretim ortamında çalıştırmak için kullanılması dotnet run
önerilmez. Bunun yerine komutunu kullanarak dotnet publish
bir dağıtım oluşturun ve yayımlanan çıkışı dağıtın.
Örtük geri yükleme
, , dotnet publish
ve dotnet pack
gibi dotnet test
dotnet run
dotnet build
dotnet new
geri yükleme gerektiren tüm komutlar tarafından örtük olarak çalıştırıldığından, komutunu çalıştırmanız dotnet restore
gerekmez. Örtük geri yüklemeyi devre dışı bırakmak için seçeneğini kullanın --no-restore
.
Komutudotnet restore
, Azure DevOps Services'teki sürekli tümleştirme derlemeleri veya geri yüklemenin ne zaman gerçekleştiğini açıkça denetlemesi gereken derleme sistemleri gibi açıkça geri yüklemenin anlamlı olduğu bazı senaryolarda hala yararlıdır.
NuGet akışlarını yönetme hakkında bilgi için belgelere dotnet restore
bakın.
Bu komut, uzun biçimde geçirildiğinde (örneğin, --source
) seçenekleri desteklerdotnet restore
. gibi -s
kısa form seçenekleri desteklenmez.
İş yükü bildirimi indirmeleri
Bu komutu çalıştırdığınızda, iş yükleri için reklam bildirimlerini zaman uyumsuz bir arka plan indirme işlemi başlatır. Bu komut tamamlandığında indirme işlemi hala çalışıyorsa indirme durdurulur. Daha fazla bilgi için bkz . Reklam bildirimleri.
Seçenekler
--
Çalıştırılmakta olan uygulamanın bağımsız değişkenlerinden
dotnet run
bağımsız değişkenleri ile sınırlandırıyor. Bu sınırlayıcıdan sonraki tüm bağımsız değişkenler uygulama çalıştırmasına geçirilir.
-a|--arch <ARCHITECTURE>
Hedef mimariyi belirtir. Bu, sağlanan değerin varsayılan RID ile birleştirildiği Çalışma Zamanı Tanımlayıcısı'nı (RID) ayarlamak için bir kısaltma söz dizimidir. Örneğin, bir
win-x64
makinede, belirterek--arch x86
RID değerini olarakwin-x86
ayarlar. Bu seçeneği kullanırsanız, seçeneğini kullanmayın-r|--runtime
. .NET 6 Preview 7 sürümünden itibaren kullanılabilir.
-c|--configuration <CONFIGURATION>
Derleme yapılandırmasını tanımlar. Çoğu proje için varsayılan değer şeklindedir
Debug
, ancak projenizdeki derleme yapılandırma ayarlarını geçersiz kılabilirsiniz.
-f|--framework <FRAMEWORK>
Belirtilen çerçeveyi kullanarak uygulamayı derler ve çalıştırır. Çerçeve proje dosyasında belirtilmelidir.
--force
Son geri yükleme başarılı olsa bile tüm bağımlılıkların çözümlenmesine zorlar. Bu bayrağın belirtilmesi, project.assets.json dosyasını silmekle aynıdır.
-?|-h|--help
komutunun nasıl kullanılacağına ilişkin bir açıklama yazdırır.
--interactive
Komutun durmasına ve kullanıcı girişini veya eylemini beklemesine izin verir. Örneğin, kimlik doğrulamasını tamamlamak için. .NET Core 3.0 SDK'sı ile kullanılabilir.
--launch-profile <NAME>
Uygulamayı başlatırken kullanılacak başlatma profilinin adı (varsa). Başlatma profilleri launchSettings.json dosyasında tanımlanır ve genellikle ,
Staging
veProduction
olarak adlandırılırDevelopment
. Daha fazla bilgi için bkz . Birden çok ortamla çalışma.--no-build
Çalıştırmadan önce projeyi derlemez. Ayrıca bayrağı örtük olarak ayarlar
--no-restore
.--no-dependencies
Projeden projeye (P2P) başvurularla bir projeyi geri yüklerken, başvuruları değil kök projeyi geri yükler.
--no-launch-profile
Uygulamayı yapılandırmak için launchSettings.json kullanmayı denemez.
--no-restore
Komutu çalıştırırken örtük geri yükleme yürütmez.
--os <OS>
Hedef işletim sistemini (OS) belirtir. Bu, sağlanan değerin varsayılan RID ile birleştirildiği Çalışma Zamanı Tanımlayıcısı'nı (RID) ayarlamak için bir kısaltma söz dizimidir. Örneğin, bir
win-x64
makinede, belirterek--os linux
RID değerini olaraklinux-x64
ayarlar. Bu seçeneği kullanırsanız, seçeneğini kullanmayın-r|--runtime
. .NET 6'dan itibaren kullanılabilir.
--project <PATH>
Çalıştırılacak proje dosyasının yolunu belirtir (klasör adı veya tam yol). Belirtilmezse, varsayılan olarak geçerli dizine geçer.
-p
--project
kısaltması .NET 6 SDK'dan başlayarak kullanım dışı bırakılmıştır. .NET 6 RC1 SDK'sında başlayan sınırlı bir süre için,-p
kullanımdan kaldırma uyarısına rağmen için--project
kullanılabilir. seçeneği için sağlanan bağımsız değişken içermiyorsa=
, komutu için--project
kısa olarak kabul eder-p
. Aksi takdirde, komutu bunun için--property
kısa olduğunu-p
varsayar. için bu esnek kullanımı-p
--project
.NET 7'de aşamalı olarak kullanıma sunulacaktır.--property:<NAME>=<VALUE>
Bir veya daha fazla MSBuild özelliği ayarlar. Noktalı virgülle sınırlandırılmış birden çok özellik belirtin veya şu seçeneği yineleyerek:
--property:<NAME1>=<VALUE1>;<NAME2>=<VALUE2> --property:<NAME1>=<VALUE1> --property:<NAME2>=<VALUE2>
Kısa form
-p
için--property
kullanılabilir. seçeneği için sağlanan bağımsız değişken öğesini içeriyorsa=
,-p
için--property
kısa kabul edilir. Aksi takdirde, komutu bunun için--project
kısa olduğunu-p
varsayar.BIR MSBuild özelliği ayarlamak yerine uygulamaya geçirmek
--property
için söz dizimi ayırıcısından--
sonra seçeneğini belirtin, örneğin:dotnet run -- --property name=value
-r|--runtime <RUNTIME_IDENTIFIER>
Paketlerinin geri yükleneceği hedef çalışma zamanını belirtir. Çalışma Zamanı Tanımlayıcılarının (RID) listesi için RID kataloğuna bakın.
--tl:[auto|on|off]
Derleme çıkışı için terminal günlükçüsunun kullanılıp kullanılmayacağını belirtir. Varsayılan değer, terminal günlüğünü etkinleştirmeden önce ortamı doğrulayan değeridir
auto
. Ortam denetimi, terminalin modern çıkış özelliklerini kullanabileceğini ve yeni günlükçü'leri etkinleştirmeden önce yeniden yönlendirilmiş standart çıkış kullanmadığını doğrular.on
ortam denetimini atlar ve terminal günlüğünü etkinleştirir.off
ortam denetimini atlar ve varsayılan konsol günlükçüsüsü kullanır.Terminal günlükçü, geri yükleme aşamasını ve ardından derleme aşamasını gösterir. Her aşamada, şu anda oluşturulan projeler terminalin en altında görünür. Derlemeye alınan her proje, hem şu anda derlenen MSBuild hedefini hem de bu hedefe harcanan süreyi oluşturur. Derleme hakkında daha fazla bilgi edinmek için bu bilgileri arayabilirsiniz. Bir projenin oluşturulması tamamlandığında, şunları yakalayan tek bir "derleme tamamlandı" bölümü yazılır:
- Oluşturulan projenin adı.
- Hedef çerçeve (çok hedefliyse).
- Bu derlemenin durumu.
- Bu derlemenin birincil çıkışı (köprüdür).
- Bu proje için oluşturulan tüm tanılamalar.
Bu seçenek .NET 8'den itibaren kullanılabilir.
-v|--verbosity <LEVEL>
Komutun ayrıntı düzeyini ayarlar. İzin verilen değerler ,
m[inimal]
,n[ormal]
,d[etailed]
vediag[nostic]
değerleridirq[uiet]
. Varsayılan değer:minimal
. Daha fazla bilgi için bkz. LoggerVerbosity.
Örnekler
Projeyi geçerli dizinde çalıştırın:
dotnet run
Belirtilen projeyi çalıştırın:
dotnet run --project ./projects/proj1/proj1.csproj
Projeyi geçerli dizinde çalıştırın ve Yayın yapılandırması'nı belirtin:
dotnet run --property:Configuration=Release
Projeyi geçerli dizinde çalıştırın (
--help
boş--
seçenek kullanıldığından bu örnekteki bağımsız değişken uygulamaya geçirilir):dotnet run --configuration Release -- --help
Geçerli dizinde proje için bağımlılıkları ve araçları geri yükleyip yalnızca en düşük çıkışı görüntüleyin ve sonra projeyi çalıştırın:
dotnet run --verbosity m