Öğretici: Visual Studio Code kullanarak .NET konsol uygulaması yayımlama
Bu öğretici, diğer kullanıcıların çalıştırabilmesi için bir konsol uygulamasının nasıl yayımlandığını gösterir. Yayımlama, bir uygulamayı çalıştırmak için gereken dosya kümesini oluşturur. Dosyaları dağıtmak için hedef makineye kopyalayın.
Uygulamayı yayımlamak için .NET CLI kullanılır, bu nedenle dilerseniz Visual Studio Code dışında bir kod düzenleyicisiyle bu öğreticiyi izleyebilirsiniz.
Önkoşullar
- Bu öğretici, Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Uygulamayı yayımlayın
Visual Studio Code’u başlatın.
Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz HelloWorld proje klasörünü açın.
Ana menüden Terminali Görüntüle'yi>seçin.
Terminal HelloWorld klasöründe açılır.
Şu komutu çalıştırın:
dotnet publish --configuration Release
Varsayılan derleme yapılandırması Hata Ayıkla'dır, bu nedenle bu komut Yayın derleme yapılandırmasını belirtir. Yayın derleme yapılandırmasının çıktısı en az simgesel hata ayıklama bilgilerine sahiptir ve tam olarak iyileştirilmiştir.
Komut çıktısı aşağıdaki örneğe benzer:
Microsoft (R) Build Engine version 17.8.0+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore... All projects are up-to-date for restore. HelloWorld -> C:\Projects\HelloWorld\bin\Release\net8.0\HelloWorld.dll HelloWorld -> C:\Projects\HelloWorld\bin\Release\net8.0\publish\
Dosyaları inceleme
Yayımlama işlemi varsayılan olarak, yayımlanan uygulamanın .NET çalışma zamanının yüklü olduğu bir makinede çalıştığı bir dağıtım türü olan çerçeveye bağımlı bir dağıtım oluşturur. Yayımlanan uygulamayı çalıştırmak için yürütülebilir dosyayı kullanabilir veya komutu bir komut isteminden çalıştırabilirsiniz dotnet HelloWorld.dll
.
Aşağıdaki adımlarda yayımlama işlemi tarafından oluşturulan dosyalara göz atacaksınız.
Sol gezinti çubuğunda Gezgin'i seçin.
Bölme/Yayın/net7.0/publish'i genişletin.
Resimde gösterildiği gibi, yayımlanan çıktı aşağıdaki dosyaları içerir:
HelloWorld.deps.json
Bu, uygulamanın çalışma zamanı bağımlılıkları dosyasıdır. Uygulamayı çalıştırmak için gereken .NET bileşenlerini ve kitaplıkları (uygulamanızı içeren dinamik bağlantı kitaplığı dahil) tanımlar. Daha fazla bilgi için bkz . Çalışma zamanı yapılandırma dosyaları.
HelloWorld.dll
Bu, uygulamanın çerçeveye bağımlı dağıtım sürümüdür. Bu dinamik bağlantı kitaplığını çalıştırmak için komut istemine girin
dotnet HelloWorld.dll
. Uygulamayı çalıştırmanın bu yöntemi.NET çalışma zamanının yüklü olduğu herhangi bir platformda çalışır.HelloWorld.exe (Linux veya macOS üzerinde HelloWorld.)
Bu, uygulamanın çerçeveye bağımlı yürütülebilir sürümüdür. Dosya işletim sistemine özgüdür.
HelloWorld.pdb (dağıtım için isteğe bağlı)
Bu hata ayıklama simgeleri dosyasıdır. Bu dosyayı uygulamanızla birlikte dağıtmanız gerekmez, ancak uygulamanızın yayımlanmış sürümünde hata ayıklamanız gerektiğinde dosyayı kaydetmeniz gerekir.
HelloWorld.runtimeconfig.json
Bu, uygulamanın çalışma zamanı yapılandırma dosyasıdır. Uygulamanızın üzerinde çalıştırılacak şekilde derlendiği .NET sürümünü tanımlar. Buna yapılandırma seçenekleri de ekleyebilirsiniz. Daha fazla bilgi için bkz . .NET çalışma zamanı yapılandırma ayarları.
Yayımlanan uygulamayı çalıştırma
Gezgin'de yayımla klasörüne sağ tıklayın (macOS'a Ctrl tuşunu basılı tutarak tıklayın) ve Tümleşik Terminalde Aç'ı seçin.
Windows veya Linux'ta yürütülebilir dosyayı kullanarak uygulamayı çalıştırın.
Windows'ta enter tuşuna basın
.\HelloWorld.exe
.Linux'ta enter tuşuna basın
./HelloWorld
.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Herhangi bir platformda komutunu kullanarak
dotnet
uygulamayı çalıştırın:Girin
dotnet HelloWorld.dll
ve Enter tuşuna basın.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Ek kaynaklar
- .NET uygulama dağıtımı
- .NET CLI ile .NET uygulamaları yayımlama
dotnet publish
- .NET SDK'sını sürekli tümleştirme (CI) ortamlarında kullanma
Sonraki adımlar
Bu öğreticide bir konsol uygulaması yayımladınız. Sonraki öğreticide bir sınıf kitaplığı oluşturacaksınız.
Bu öğretici, diğer kullanıcıların çalıştırabilmesi için bir konsol uygulamasının nasıl yayımlandığını gösterir. Yayımlama, bir uygulamayı çalıştırmak için gereken dosya kümesini oluşturur. Dosyaları dağıtmak için hedef makineye kopyalayın.
Uygulamayı yayımlamak için .NET CLI kullanılır, bu nedenle dilerseniz Visual Studio Code dışında bir kod düzenleyicisiyle bu öğreticiyi izleyebilirsiniz.
Önkoşullar
- Bu öğretici, Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Uygulamayı yayımlayın
Visual Studio Code’u başlatın.
Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz HelloWorld proje klasörünü açın.
Ana menüden Terminali Görüntüle'yi>seçin.
Terminal HelloWorld klasöründe açılır.
Şu komutu çalıştırın:
dotnet publish --configuration Release
Varsayılan derleme yapılandırması Hata Ayıkla'dır, bu nedenle bu komut Yayın derleme yapılandırmasını belirtir. Yayın derleme yapılandırmasının çıktısı en az simgesel hata ayıklama bilgilerine sahiptir ve tam olarak iyileştirilmiştir.
Komut çıktısı aşağıdaki örneğe benzer:
Microsoft (R) Build Engine version 16.7.4+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore... All projects are up-to-date for restore. HelloWorld -> C:\Projects\HelloWorld\bin\Release\net7.0\HelloWorld.dll HelloWorld -> C:\Projects\HelloWorld\bin\Release\net7.0\publish\
Dosyaları inceleme
Yayımlama işlemi varsayılan olarak, yayımlanan uygulamanın .NET çalışma zamanının yüklü olduğu bir makinede çalıştığı bir dağıtım türü olan çerçeveye bağımlı bir dağıtım oluşturur. Yayımlanan uygulamayı çalıştırmak için yürütülebilir dosyayı kullanabilir veya komutu bir komut isteminden çalıştırabilirsiniz dotnet HelloWorld.dll
.
Aşağıdaki adımlarda yayımlama işlemi tarafından oluşturulan dosyalara göz atacaksınız.
Sol gezinti çubuğunda Gezgin'i seçin.
Bölme/Yayın/net7.0/publish'i genişletin.
Resimde gösterildiği gibi, yayımlanan çıktı aşağıdaki dosyaları içerir:
HelloWorld.deps.json
Bu, uygulamanın çalışma zamanı bağımlılıkları dosyasıdır. Uygulamayı çalıştırmak için gereken .NET bileşenlerini ve kitaplıkları (uygulamanızı içeren dinamik bağlantı kitaplığı dahil) tanımlar. Daha fazla bilgi için bkz . Çalışma zamanı yapılandırma dosyaları.
HelloWorld.dll
Bu, uygulamanın çerçeveye bağımlı dağıtım sürümüdür. Bu dinamik bağlantı kitaplığını çalıştırmak için komut istemine girin
dotnet HelloWorld.dll
. Uygulamayı çalıştırmanın bu yöntemi.NET çalışma zamanının yüklü olduğu herhangi bir platformda çalışır.HelloWorld.exe (Linux'ta HelloWorld, macOS'ta oluşturulmaz.)
Bu, uygulamanın çerçeveye bağımlı yürütülebilir sürümüdür. Dosya işletim sistemine özgüdür.
HelloWorld.pdb (dağıtım için isteğe bağlı)
Bu hata ayıklama simgeleri dosyasıdır. Bu dosyayı uygulamanızla birlikte dağıtmanız gerekmez, ancak uygulamanızın yayımlanmış sürümünde hata ayıklamanız gerektiğinde dosyayı kaydetmeniz gerekir.
HelloWorld.runtimeconfig.json
Bu, uygulamanın çalışma zamanı yapılandırma dosyasıdır. Uygulamanızın üzerinde çalıştırılacak şekilde derlendiği .NET sürümünü tanımlar. Buna yapılandırma seçenekleri de ekleyebilirsiniz. Daha fazla bilgi için bkz . .NET çalışma zamanı yapılandırma ayarları.
Yayımlanan uygulamayı çalıştırma
Gezgin'de yayımla klasörüne sağ tıklayın (macOS'a Ctrl tuşunu basılı tutarak tıklayın) ve Terminalde Aç'ı seçin.
Windows veya Linux'ta yürütülebilir dosyayı kullanarak uygulamayı çalıştırın.
Windows'ta enter tuşuna basın
.\HelloWorld.exe
. Bash terminali ile Windows'ta girin./HelloWorld.exe
.Linux'ta enter tuşuna basın
./HelloWorld
.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Herhangi bir platformda komutunu kullanarak
dotnet
uygulamayı çalıştırın:Girin
dotnet HelloWorld.dll
ve Enter tuşuna basın.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Ek kaynaklar
- .NET uygulama dağıtımı
- .NET CLI ile .NET uygulamaları yayımlama
dotnet publish
- .NET SDK'sını sürekli tümleştirme (CI) ortamlarında kullanma
Sonraki adımlar
Bu öğreticide bir konsol uygulaması yayımladınız. Sonraki öğreticide bir sınıf kitaplığı oluşturacaksınız.
Bu öğretici, diğer kullanıcıların çalıştırabilmesi için bir konsol uygulamasının nasıl yayımlandığını gösterir. Yayımlama, bir uygulamayı çalıştırmak için gereken dosya kümesini oluşturur. Dosyaları dağıtmak için hedef makineye kopyalayın.
Uygulamayı yayımlamak için .NET CLI kullanılır, bu nedenle dilerseniz Visual Studio Code dışında bir kod düzenleyicisiyle bu öğreticiyi izleyebilirsiniz.
Önkoşullar
- Bu öğretici, Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz konsol uygulamasıyla çalışır.
Uygulamayı yayımlayın
Visual Studio Code’u başlatın.
Visual Studio Code kullanarak .NET konsol uygulaması oluşturma bölümünde oluşturduğunuz HelloWorld proje klasörünü açın.
Ana menüden Terminali Görüntüle'yi>seçin.
Terminal HelloWorld klasöründe açılır.
Şu komutu çalıştırın:
dotnet publish --configuration Release
Varsayılan derleme yapılandırması Hata Ayıkla'dır, bu nedenle bu komut Yayın derleme yapılandırmasını belirtir. Yayın derleme yapılandırmasının çıktısı en az simgesel hata ayıklama bilgilerine sahiptir ve tam olarak iyileştirilmiştir.
Komut çıktısı aşağıdaki örneğe benzer:
Microsoft (R) Build Engine version 16.7.0+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore... All projects are up-to-date for restore. HelloWorld -> C:\Projects\HelloWorld\bin\Release\net6.0\HelloWorld.dll HelloWorld -> C:\Projects\HelloWorld\bin\Release\net6.0\publish\
Dosyaları inceleme
Yayımlama işlemi varsayılan olarak, yayımlanan uygulamanın .NET çalışma zamanının yüklü olduğu bir makinede çalıştığı bir dağıtım türü olan çerçeveye bağımlı bir dağıtım oluşturur. Yayımlanan uygulamayı çalıştırmak için yürütülebilir dosyayı kullanabilir veya komutu bir komut isteminden çalıştırabilirsiniz dotnet HelloWorld.dll
.
Aşağıdaki adımlarda yayımlama işlemi tarafından oluşturulan dosyalara göz atacaksınız.
Sol gezinti çubuğunda Gezgin'i seçin.
Bölme/Yayın/net6.0/publish seçeneğini genişletin.
Resimde gösterildiği gibi, yayımlanan çıktı aşağıdaki dosyaları içerir:
HelloWorld.deps.json
Bu, uygulamanın çalışma zamanı bağımlılıkları dosyasıdır. Uygulamayı çalıştırmak için gereken .NET bileşenlerini ve kitaplıkları (uygulamanızı içeren dinamik bağlantı kitaplığı dahil) tanımlar. Daha fazla bilgi için bkz . Çalışma zamanı yapılandırma dosyaları.
HelloWorld.dll
Bu, uygulamanın çerçeveye bağımlı dağıtım sürümüdür. Bu dinamik bağlantı kitaplığını çalıştırmak için komut istemine girin
dotnet HelloWorld.dll
. Uygulamayı çalıştırmanın bu yöntemi.NET çalışma zamanının yüklü olduğu herhangi bir platformda çalışır.HelloWorld.exe (Linux'ta HelloWorld, macOS'ta oluşturulmaz.)
Bu, uygulamanın çerçeveye bağımlı yürütülebilir sürümüdür. Dosya işletim sistemine özgüdür.
HelloWorld.pdb (dağıtım için isteğe bağlı)
Bu hata ayıklama simgeleri dosyasıdır. Bu dosyayı uygulamanızla birlikte dağıtmanız gerekmez, ancak uygulamanızın yayımlanmış sürümünde hata ayıklamanız gerektiğinde dosyayı kaydetmeniz gerekir.
HelloWorld.runtimeconfig.json
Bu, uygulamanın çalışma zamanı yapılandırma dosyasıdır. Uygulamanızın üzerinde çalıştırılacak şekilde derlendiği .NET sürümünü tanımlar. Buna yapılandırma seçenekleri de ekleyebilirsiniz. Daha fazla bilgi için bkz . .NET çalışma zamanı yapılandırma ayarları.
Yayımlanan uygulamayı çalıştırma
Gezgin'de yayımla klasörüne sağ tıklayın (macOS'a Ctrl tuşunu basılı tutarak tıklayın) ve Terminalde Aç'ı seçin.
Yürütülebilir dosyayı kullanarak uygulamayı çalıştırın.
Windows'ta enter tuşuna basın
.\HelloWorld.exe
.Linux veya macOS'ta enter tuşuna basın
./HelloWorld
.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Herhangi bir platformda komutunu kullanarak
dotnet
uygulamayı çalıştırın:Girin
dotnet HelloWorld.dll
ve Enter tuşuna basın.İstemi yanıt olarak bir ad girin ve çıkmak için herhangi bir tuşa basın.
Ek kaynaklar
- .NET uygulama dağıtımı
- .NET CLI ile .NET uygulamaları yayımlama
dotnet publish
- .NET SDK'sını sürekli tümleştirme (CI) ortamlarında kullanma
Sonraki adımlar
Bu öğreticide bir konsol uygulaması yayımladınız. Sonraki öğreticide bir sınıf kitaplığı oluşturacaksınız.