Pakning og publicering til NuGet
Pak et library i en .nupkg, og publicér det. Udfyld de minimale metadata, kør dotnet pack, push med en API-nøgle, og følg sikker praksis for publicering.
Pakning og publicering til NuGet er en gratis C# Academy-lektion på CoddyKit. Dette er lektion 2 af 3. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i C# Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. C# Academy-kurset indeholder 3 lektioner i alt.
Plan
Formål: Byg og publicér en NuGet-pakke.
- Udfyld grundlæggende metadata i projektet
- Kør dotnet pack for at få en .nupkg
- Brug en API-nøgle til dotnet nuget push
- Følg sikre kontroller før publicering
Metadata, der skal angives
- PackageId: entydigt ID (f.eks. Company.Widget)
- Version: MAJOR.MINOR.PATCH
- Authors, Description
- PackageLicenseExpression (f.eks. MIT) eller licensfil
- RepositoryUrl (valgfrit, men nyttigt)
Forhåndsvisning af identitet
En pakke indeholder identitet og version. Denne simple app læser assemblynavnet og -versionen, som du eksponerer ved pakning.
using System;
using System.Reflection;
// Demo: show how a packed library exposes version and name.
// In real packaging, version/metadata come from the .csproj.
public class Program
{
public static void Main(string[] args)
{
Assembly asm = Assembly.GetExecutingAssembly();
Version ver = asm.GetName().Version;
string name = asm.GetName().Name;
Console.WriteLine("Assembly: " + name);
Console.WriteLine("Version: " + (ver == null ? "unknown" : ver.ToString()));
Console.WriteLine("Tip: Set PackageId/Version/Authors in the .csproj before packing.");
}
}
Trin til pakning og publicering
Arbejdsgang: gendan → pak → publicér. Hold API-nøglen sikker, og begræns dens omfang.
using System;
// This code prints the typical pack workflow steps.
// Run them in your terminal; here we just echo the sequence.
public class Program
{
static void Print(string step)
{
Console.WriteLine(step);
}
public static void Main(string[] args)
{
Print("1) Ensure .csproj has PackageId/Version/Authors/Description");
Print("2) dotnet restore");
Print("3) dotnet pack -c Release");
Print(" -> bin/Release/<tfm>/*.nupkg");
Print("4) Get an API key from your NuGet server");
Print("5) dotnet nuget push bin/Release/*.nupkg --api-key <KEY> --source <URL or nuget.org>");
Print("Done: package available for consumers.");
}
}
Tip til publicering
- Afprøv pakken lokalt før publicering (installér fra en lokal kilde)
- Hold API-nøgler hemmelige; foretræk miljøvariabler
- Medtag symbol- og kildeoplysninger, hvis du ønsker bedre fejlfinding
- Skriv en kort README og ændringslog
Fejlfinding
- ID findes allerede → vælg et unikt PackageId
- Licens mangler → tilføj PackageLicenseExpression eller en licensfil
- Ingen beskrivelse → tilføj et kort produktresumé
- Forkert version → forøg MAJOR/MINOR/PATCH korrekt
Pack-kommando
Opsummering
Opsummering: Udfyld projektmetadata, kør dotnet pack for at oprette en .nupkg-fil, og brug derefter dotnet nuget push sammen med din API-nøgle. Kontrollér indholdet, og opbevar legitimationsoplysninger sikkert.
Lær C# med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 93
- Lektioner
- 346
Ofte stillede spørgsmål
Er lektionen “Pakning og publicering til NuGet” gratis?
Ja — hele teksten til “Pakning og publicering til NuGet” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af C# Academy-kurset, skal du opgradere til CoddyKit PRO. C# Academy-kurset indeholder 3 lektioner i alt.
Hvad lærer jeg i “Pakning og publicering til NuGet”?
Pak et library i en .nupkg, og publicér det. Udfyld de minimale metadata, kør dotnet pack, push med en API-nøgle, og følg sikker praksis for publicering. Du øver dig i C# Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på C# Academy?
Der kræves ingen tidligere erfaring. C# Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 2 af 3.
Hvor lang tid tager lektionen “Pakning og publicering til NuGet”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne C# Academy-lektion?
Ja. Alle C# Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Biblioteks- kontra app-.csproj og semantisk versionsstyring
- Pakning og publicering til NuGet
- Multi-targeting