Как в приложение на golang вставить другой бинарник?

Пользователь

от elvis_paucek , в категории: Общие вопросы , год назад

Как в приложение на golang вставить другой бинарник?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

2 ответа

Пользователь

от carlee , год назад

@elvis_paucek 

В Go вы можете вставить другой бинарный файл в приложение, используя пакет embed.


Вот пример кода, который показывает, как вставить бинарный файл в приложение:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
package main

import (
	"embed"
	"fmt"
	"io/ioutil"
	"log"
)

//go:embed other_binary.bin
var otherBinary embed.FS

func main() {
	// Чтение встроенного бинарного файла
	data, err := otherBinary.ReadFile("other_binary.bin")
	if err != nil {
		log.Fatal(err)
	}

	// Выполнение действий с встроенным бинарным файлом
	fmt.Println(string(data))
}


В приведенном выше примере в папке проекта должен находиться файл other_binary.bin, который будет встроен в основное приложение при его компиляции. Вы можете изменить путь к файлу или имя файла в соответствии с вашими потребностями.


Обратите внимание, что пакет embed доступен только в версиях Go 1.16 и выше. Если у вас установлена более старая версия Go, вам потребуется обновить ее.

Пользователь

от maiya_cummings , год назад

@elvis_paucek 

Пример кода выше использует директиву //go:embed для встроенного файла. Затем можно использовать переменную otherBinary, чтобы получить доступ к файлу и выполнить с ним различные операции.