Go中的“net”包导入错误

时间:2012-04-26 00:05:57

标签: go

我正在尝试运行我在网上找到的示例Go程序,如下所示:

/* IP */

package main

import (
    "net"
    "os"
    "fmt"
)

func main() {
    if len(os.Args) != 2 {
        fmt.Fprintf(os.Stderr, "Usage: %s ip-addr\n", os.Args[0])
        os.Exit(1)
    }
    name := os.Args[1]

    addr := net.ParseIP(name)
    if addr == nil {
        fmt.Println("Invalid address")
    } else {
        fmt.Println("The address is ", addr.String())
    }
    os.Exit(0)
}

然后我尝试使用以下方法编译它:

6g ip.go

我收到以下错误:

ip.go:7: can't find import: net

我的go版本没有网络包吗?或者我使用的是错误版本的编译器?谢谢!

1 个答案:

答案 0 :(得分:3)

如果您仍在使用6g编译器命令,那么我假设您没有使用recent Go1 stable release?这取决于您实际运行的版本。 “net”是一个有效的包:http://golang.org/pkg/net/

建议您安装最新的Go。

$ go run ip.go 127.0.0.1
The address is  127.0.0.1

你可以看到go操场,使用Go 1,工作:
http://play.golang.org/p/rXSep9GH-U