Golang Go 的外部包和项目
在Go语言中,你可以通过import关键字来导入外部包。外部包可以是你从第三方获取的,也可以是你自己创建的。
- 导入并使用外部包
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
在上述代码中,我们导入了Go语言自带的fmt包,并在main函数中使用它的Println函数打印出"Hello, World!"。
- 创建并使用本地项目包
在Go语言中,你可以创建本地项目包,并在其他包中导入使用。
// 在项目目录下创建一个新的目录,命名为util
// 在util目录下创建一个新的go文件,命名为stringutil.go
package util
func Reverse(s string) string {
runes := []rune(s)
for i, j := 0, len(runes)-1; i < j; i, j = i+1, j-1 {
runes[i], runes[j] = runes[j], runes[i]
}
return string(runes)
}
在上述代码中,我们创建了一个名为util的包,并在该包中定义了一个Reverse函数,用于反转字符串。
import (
"learning/util"
"fmt"
)
func main() {
fmt.Println(util.Reverse("Hello, World!"))
}
在上述代码中,我们导入了我们创建的util包,并在main函数中使用它的Reverse函数将"Hello, World!"反转后打印出结果。
注意:在Go语言中,导入包的路径是从$GOPATH/src/开始的。如果你的项目不在$GOPATH路径下,你可以使用go mod来管理你的项目依赖。
- 使用go mod管理项目依赖
# 初始化mod
go mod init example.com/hello
# 添加依赖
go get -u github.com/gin-gonic/gin@v1.7.7
在上述代码中,我们使用go mod init命令初始化了一个新的mod文件,并在其中声明了我们的项目依赖。然后,我们使用go get -u命令从远程仓库下载并添加了gin框架的v1.7.7版本作为我们的依赖。
import (
"github.com/gin-gonic/gin"
)
func main() {
r := gin.Default()
r.GET("/hello", func(c *gin.Context) {
c.String(200, "Hello, World!")
})
r.Run() // 在0.0.0.0:8080启动服务
}
在上述代码中,我们导入了gin框架,并在main函数中使用它创建了一个简单的web服务器,它会在访问localhost:8080/hello时返回"Hello, World!"。
评论已关闭