>백엔드 개발 >Golang >Go의 `-ldflags -X`를 사용하여 `main` 이외의 패키지에 변수를 할당할 수 있나요?

Go의 `-ldflags -X`를 사용하여 `main` 이외의 패키지에 변수를 할당할 수 있나요?

Mary-Kate Olsen
Mary-Kate Olsen원래의
2024-12-16 08:00:23714검색

Can Go's `-ldflags -X` Assign Variables to Packages Other Than `main`?

Go Build에서 -ldflags -X를 사용한 패키지 변수 할당

문제:

Go 애플리케이션을 빌드할 때 -ldflags -X를 사용하여 기본 패키지가 아닌 패키지에 버전 문자열 변수를 할당하는 것이 가능합니다. 옵션?

해결책:

예, -ldflags -X를 사용하여 모든 패키지에서 변수를 설정할 수 있습니다. 그러나 패키지 이름뿐만 아니라 패키지의 전체 가져오기 경로를 지정해야 합니다.

이를 달성하려면 다음 구문을 사용하십시오.

-X importpath.package.variable=value

예를 들어, config 패키지가 $GOPATH/src/my/package/config에 있는 경우 다음 빌드 명령을 사용하십시오.

go build -ldflags "-X my/package/config.Version=1.0.0" -o $(MY_BIN) $(MY_SRC)

이 명령은 값을 할당합니다. 1.0.0을 구성 패키지의 Version 변수에 적용하세요.

위 내용은 Go의 `-ldflags -X`를 사용하여 `main` 이외의 패키지에 변수를 할당할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.