"go run"을 위해 메인 패키지 내에서 코드를 여러 파일로 분리
재사용 가능한 코드 개발을 추구하면서, 응집력 있는 패키지 구조를 유지하면서 기본 프로그램의 섹션을 별도의 파일로 분리하는 것이 유용한 경우가 많습니다. 그러나 "go run main.go"를 실행할 때 오류가 발생하면 실행 명령을 조정해야 함을 나타낼 수 있습니다.
"go run *.go"
메인 패키지 내에서 여러 파일을 효과적으로 실행하려면 명령을 "go run main.go"에서 "go run *.go"로 수정하세요. 이 명령은 컴파일러에게 현재 디렉토리의 모든 Go 파일(확장자 ".go" 포함)을 처리하여 개별 파일의 코드를 효과적으로 결합하도록 지시합니다.
샘플 코드 구조
다음 디렉토리 구조와 그에 따른 내용을 고려하세요. 파일:
ls foo
# output:
main.go
bar.go
로그인 후 복사
파일 bar.go
// file bar.go
package main
import "fmt"
func Bar() {
fmt.Println("Bar")
}
로그인 후 복사
파일 main.go
// file main.go
package main
func main() {
Bar()
}
로그인 후 복사
이니셜 오류
위의 코드 구조로 "go run main.go"를 실행하려고 하면 "Bar"가 정의되지 않았다는 오류가 발생합니다. "go run main.go"는 "main.go" 파일만 컴파일하고 실행하기 때문입니다.
"go run *.go"로 해결
"go run *.go"를 사용하면 "main.go"와 "bar.go"가 모두 처리되어 "main.go"의 주요 기능에 액세스할 수 있습니다. "bar.go"의 "Bar" 기능.
Windows 환경의 경우(업데이트)
2019년 7월 26일 현재 Go > ;=1.11, "go run ." 명령 Windows 시스템에서 "go run *.go"와 동일한 결과를 얻기 위해 사용할 수 있습니다.
위 내용은 `go run`을 사용하여 동일한 패키지에서 여러 Go 파일을 어떻게 실행합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!