Recently, I tried to install one package using Golang and got an error message claiming that Golang couldn’t load the package, as shown below.
can't load package: package github.com/mypackage/repo@version: cannot use path@version syntax in GOPATH mode
In theory, multiple things can generate this error, requiring different solutions. Today I will provide you with two solutions to solve this error yourself.
Solution 1: Switching Commands
In most scenarios, you may be using an
install command to install the package in Golang on your system. If you check the golang history before the
install command, there was a
get command [deprecated] to install and compile the packages.
Below is the command that generated the error for me while installing the package.
$ go install -v github.com/mypackage/repo@version
The error is thrown due to the
install command, although I just changed the
install into the
get command, and tada, the problem was solved.
$ go get -v github.com/mypackage/repo@version
Note: Although the problem has been solved but do not forget to consider that the
getcommand is deprecated and not supported any longer. I strongly recommend using it in rare situations.
Solution 2: Go-Mode
Go-Mode covers the basic features you need while working with Golang, along with other additional features such as autocomplete, analysis, and refactoring. You can initiate a new project in Go-Mode and install the package using the mod download command, as shown below.
First, export Go-Mode in your current terminal session as shown below.
$ export GO111MODULE=on
Next, we need to initiate a new project name. Consider this name as your package name.
$ go mod init <Project Name>
Finally, specify the package address along with the
mod download command, as shown below.
$ go mod download github.com/mypackage/repo@version
And here we complete our final step, which mostly resolves your issue with “can’t load package”.
If any of the above solutions didn’t work out, please let us know in the comment section, and if you followed different steps to solve the above issue, then let us know so we can include it in this article.
Innovative tech mind with 12 years of experience working as a computer programmer, web developer, and security researcher. Capable of working with a variety of technology and software solutions, and managing databases.