Когда я вызываю следующий код,

 func GetCurrentDirectory() string {
    dir, err := filepath.Abs(filepath.Dir(os.Args[0])) 

Это возвращает:

/ Частный / вар / папки / CG / mwzlhrjs5y55ny553g6xz9tr0000gn / T

Безусловно, это временный путь, я принял путь к моему текущему каталогу, а не временному каталогу.

dir, err := filepath.Abs("")

Мог бы мне помочь, но я должен судить, работает ли режим отладки в goland или нет

1
Jim Green 23 Окт 2018 в 09:53

2 ответа

Лучший ответ

Чтобы исправить это, перейдите в Run | Edit Configuration... | <name of your configuration> и измените свойство Working Directory, чтобы изменить рабочий каталог приложения или настройте Output directory, чтобы указать, где создается двоичный файл и запустить из (по умолчанию он находится во временном каталоге вашей ОС).

4
dlsniper 23 Окт 2018 в 12:46

Рекомендую добавить параметр отладки.

package main

import (
    "flag"
    "fmt"
)

func main() {
    var debug bool
    flag.BoolVar(&debug, "d", false, "debug")
    flag.Parse()
    fmt.Println(debug)
}

Затем передайте его -d при запуске программы из среды IDE.

-1
Grzegorz Żur 23 Окт 2018 в 07:00
52942868