我想對 database/sql go 包做一個小的補充。我想試試我的改變,看看它是如何工作的。我認為我將能夠執行此命令以獲取我可以使用的 database/sql 中的源副本:go get github.com/golang/go/tree/master/src/database/sql然后,我打算將我的導入語句從import "database/sql"到import "github.com/golang/go/tree/master/src/database/sql"并在我的本地代碼副本中放置一個調試 Printf,以確認我剛剛提取的新代碼正在執行,而不是 /usr/local/go 中的代碼。當我嘗試上面的“go get”命令時,我收到以下錯誤消息:$ go get github.com/golang/go/tree/master/src/database/sqlpackage github.com/golang/go/tree/master/src/database/sql: cannot find package "github.com/golang/go/tree/master/src/database/sql" in any of: /usr/local/go/src/github.com/golang/go/tree/master/src/database/sql (from $GOROOT) /Users/me/go/src/github.com/golang/go/tree/master/src/database/sql (from $GOPATH)$ echo $GOPATH/Users/me/go$為什么這不起作用?我也試過用源代碼做到這一點https://go.googlesource.com/go/+/release-branch.go1.6/src/database/sql那也沒有用。然后我嘗試從上面的鏈接下載源代碼的 tgz,并在我自己的 $GOPATH/src/github.com/database/sql 文件夾中解壓縮這些文件,然后在那里構建它們。這產生了一個運行,但沒有工作的 sql.a。
2 回答

嗶嗶one
TA貢獻1854條經驗 獲得超8個贊
您可以從源代碼構建 Go,然后就地修改標準庫,也可以供應該特定包。
如果您從源代碼安裝了 Go,則在編輯軟件包后,您可以像安裝任何其他軟件包一樣安裝新版本 go install database/sql
如果將database/sql
包復制到vendor
目錄中,則將構建并導入該副本以代替標準庫中的版本。

森欄
TA貢獻1810條經驗 獲得超5個贊
正如戈多克所說
get download and install packages and dependencies
您只能獲取包和依賴項。但是你想得到一個文件夾!您可以從 github 下載其 zip 文件并將其復制到該目的地。如果您想查看錯誤,可以使用錯誤類型。
例如 sql.Open 返回 *sql.DB,錯誤
db, err := sql.Open("mysql", "astaxie:astaxie@/test?charset=utf8")
if err != nil {
fmt.Println(err)
}
- 2 回答
- 0 關注
- 193 瀏覽
添加回答
舉報
0/150
提交
取消