2016-12-28 150 views
0

我試圖打包我的應用程序二進制文件,它可以通過在localhost上運行的web界面訪問:8080,以便下載時能夠在文件夾中找到JS(前端)文件文件運行,但我似乎無法使其工作。二進制文件和其他文件

我一直在做這樣的事情:

pwd, err := os.Getwd() 
    if err != nil { 
     fmt.Println(err) 
     os.Exit(1) 
    } 

然後嘗試使用的二進制文件的工作目錄訪問裏面的文件,但似乎並沒有工作。

二進制位於:

/用戶/管理員/桌面/ testappfolder

,但是當我只需運行該程序:

pwd, err := os.Getwd() 
if err != nil { 
    fmt.Println(err) 
    os.Exit(1) 
} 
fmt.Println(pwd) 

我最終得到/Users/admin作爲工作目錄。

我想知道:

我在哪裏錯了? 這與Gopath有關嗎? 我是否以正確的方式將應用程序分配爲「zip」,並且在我的程序中直接設置文件路徑(相對於工作目錄)?還是那種邏輯錯了?

+0

看看這裏:https://github.com/jteeuwen/go-bindata –

回答

1

os.Getwd將對應於你的地址開始你的二進制文件不在二進制文件所在的位置。

爲了提供更強大的解決方案,我將使用flag或使用配置值傳遞文件目錄的位置。