Jak přidat značky sestavení Golang

Jak Pridat Znacky Sestaveni Golang



Značky sestavení v Go jsou výkonnou funkcí, která nám umožňuje podmíněně zahrnout nebo vyloučit konkrétní kód během procesu sestavování na základě konkrétních omezení sestavení. Tato flexibilita nám umožňuje vytvářet sestavení specifická pro jednotlivé platformy pro různé operační systémy, architektury nebo jiné požadavky specifické pro prostředí. Build tagy jsou speciální komentáře, které se přidávají na začátek zdrojového souboru, těsně nad deklaraci balíčku. Tyto značky poskytují systému Go build pokyny, jak zacházet s kódem v tomto souboru během procesu kompilace.

Příklad 1: Přidejte značku Golang Build pro systém Linux

Chcete-li cílit na operační systém Linux, můžeme přidat značku sestavení „// +build linux“.

//jdi postavit linux

// +sestavení linuxu

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Ahoj příklad systému Linux' )

}

Zde jsme nastavili omezení sestavení v Go, která určují, že kód by měl být sestaven pouze v případě, že cílovým systémem je Linux. Poté definujeme balíček a importujeme požadovaný příkaz pro kód. Poté zadáme metodu main(), kde zprávu vytiskneme pomocí volání „Println“ z balíčku „fmt“.







Zpráva se tedy úspěšně zobrazí na konzole pro operační systém Linux:





Příklad 2: Přidejte značku Golang Build Tag pro systém Windows

Když chceme, aby se kód spouštěl na platformě Windows, použijeme značku sestavení „// +build windows“ na začátku souboru. Z toho se můžeme ujistit, že kód je začleněn do sestavení pouze tehdy, když je zamýšlenou platformou Windows.





// +sestavení oken

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Dobrý den, příklad Windows!' )

}

Zde používáme omezení sestavení „// +build windows“, abychom zajistili, že kód bude kompilován a spuštěn pouze při sestavování pro platformu Windows. Poté k balíčku a modifikátoru importu přidáme potřebný balíček pro kód. Pak přichází funkce main(), která využívá funkci println() k vytištění příkazu při vytváření tagů okna v Golangu.

Když vytvoříme a spustíme tento program v systému Windows, zobrazí se „Ahoj, příklad Windows!“ zprávu do konzole. Všimněte si, že program nebude sestaven nebo spuštěn na jiných operačních systémech kvůli omezení sestavení.



Příklad 3: Přidejte značku sestavení Golang pro systém bez systému Windows

Naopak, pokud chceme kód vyloučit při sestavování pro Windows, můžete použít „!“ vykřičník se značkou build.

// +sestavení !oken

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Ahoj, kromě Windows!' )

}

Zde vytváříme omezující direktivu, která naznačuje, že kód by měl být vytvořen a spouštěn na jiných platformách než Windows. Vykřičník (!) před Windows označuje, že tento kód by měl být zahrnut pro všechny platformy kromě Windows. Poté pokračujeme stejným programem jako v předchozí funkci, kde nejprve přidáme balíčky a zavoláme funkci main(), která provede zprávu předávanou funkcí println().

Výstup tedy generuje zprávu na konzolách operačního systému. Mějte na paměti, že se v operačním systému Windows nespustí kvůli omezení sestavení:

Příklad 4: Přidejte značku Golang Build s logikou OR

K zahrnutí kódu při cílení na Windows NEBO Linux můžeme použít značku sestavení „// +build windows Linux“.

// +sestavení systému Windows Linux

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Hej, uživatelé Windows nebo Linuxu' )

}

Zde aplikujeme omezení sestavení s logickým OR, které má být vytvořeno pro operační systémy Windows i Linux. Řádek „// +build windows Linux“ určuje, že tento soubor by měl být součástí sestavení, pokud je cílovou platformou Windows nebo Linux. Dále importujeme balíček „fmt“ ze standardní knihovny Go, který poskytuje základní vstupní a výstupní funkce. V hlavní funkci vytiskneme řetězec „Hey, Windows or Linux Users“ pomocí funkce Println() z balíčku „fmt“.

Výstup je tedy načten v následujícím textu. Bez ohledu na to, zda používáme operační systém Windows nebo Linux, je generována stejná zpráva:

Příklad 5: Přidejte značku sestavení Golang s logikou AND

Můžeme zadat více značek sestavení, abychom vytvořili složitější podmínky. Příkaz „// +build windows,linux“ lze použít ke generování kódu pro Linux i Windows.

// +sestavení oken,386

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Toto je 32bitový Windows' )

}

Zde je definováno omezení sestavení „// +build windows,386“, které určuje, že soubor Go by měl být zahrnut do sestavení, když je cílovou platformou 32bitové Windows. Všimněte si, že mezi Windows a 386 používáme čárku „,“ která funguje jako logický operátor AND. To znamená, že musí být splněny obě podmínky, aby byl kód zahrnut do sestavení.

Potom, podobně jako v předchozím příkladu, importujeme balíček „fmt“ ze standardní knihovny Go, abychom pro výstup použili funkci Println(). Máme funkci main() programu, kde je příkaz předán jako argument funkci println().

Když vytvoříme a spustíme tento program na 32bitovém systému Windows, zobrazí se jako výstup zadaná zpráva. Pokud se jej však pokusíme sestavit a spustit na jiném operačním systému nebo architektuře, nebude součástí sestavení:

Příklad 6: Přidejte značku Golang Build pro konkrétní funkci

Kromě toho lze značky sestavení použít také na konkrétní funkce v souboru. Kvůli omezením sestavení můžeme nyní podmíněně zahrnout nebo odebrat konkrétní funkce.

balík hlavní

import 'fmt'

func hlavní () {

fmt . Println ( 'Ahoj, užij si to!' )

printWindowsMessage ()

}

// +sestavení oken

func printWindowsMessage () {

fmt . Println ( 'Pozdrav z operačního systému Windows' )

}

Zde nyní přejdeme k metodě main(), která k vytištění zprávy na začátku používá metodu Println() poskytovanou balíčkem „fmt“. Poté nasadíme funkci printWindowsMessage() pod funkci main() a určíme omezení sestavení „// +build windows“. To znamená, že funkce je součástí sestavení pouze v případě, že cílovou platformou je Windows.

Nakonec nastavíme funkci printWindowsMessage() tak, aby tiskla zadanou zprávu „Hello From Windows Operating system“ pomocí funkce Println().

Takto je načten výstup, který zobrazuje jak obecnou zprávu, tak zprávu specifickou pro platformu. Všimněte si, že pokud jej sestavíme a spustíme na jiném operačním systému, funkce printWindowsMessage() nebude součástí sestavení a zobrazí se pouze obecná zpráva:

Závěr

Přidání značek sestavení v Go poskytuje možnost přizpůsobit zahrnutí kódu během procesu sestavení. Využitím značek sestavení můžeme vytvářet sestavení specifická pro platformu, optimalizovat kód pro různé architektury a dokonce podmíněně zahrnout specifické funkce nebo vlastnosti.