Допустим у нас есть такая структура файлов:
pack/
marshaller.go
unpack.go
В версиях Go ниже 1.15 можно было запустить код без ошибок, таким образом::
go run pack/*
Но если версия Go 1.16 или выше, то при запуске будет ошибка:
malformed import path "pack/*": invalid char '*'
Всё из-за того, что начиная с версии 1.16 обновили систему модулей.
Чтобы запустить код без ошибок, нужно перечислить все файлы - go run pack/marshaller.go pack/unpack.go
или перейти в директорию и вызвать go run .
Также можно создать модуль, с помошью команды go mod init
, которой передается имя модуля.
go mod init testmod
После этого можно запускать код передавая имя директории.
go run pack