Когда я вызываю следующий код,
func GetCurrentDirectory() string {
dir, err := filepath.Abs(filepath.Dir(os.Args[0]))
Это возвращает:
/ Частный / вар / папки / CG / mwzlhrjs5y55ny553g6xz9tr0000gn / T
Безусловно, это временный путь, я принял путь к моему текущему каталогу, а не временному каталогу.
dir, err := filepath.Abs("")
Мог бы мне помочь, но я должен судить, работает ли режим отладки в goland или нет
2 ответа
Чтобы исправить это, перейдите в Run | Edit Configuration... | <name of your configuration>
и измените свойство Working Directory
, чтобы изменить рабочий каталог приложения или настройте Output directory
, чтобы указать, где создается двоичный файл и запустить из (по умолчанию он находится во временном каталоге вашей ОС).
Рекомендую добавить параметр отладки.
package main
import (
"flag"
"fmt"
)
func main() {
var debug bool
flag.BoolVar(&debug, "d", false, "debug")
flag.Parse()
fmt.Println(debug)
}
Затем передайте его -d
при запуске программы из среды IDE.
Похожие вопросы
Новые вопросы
go
Go - это язык программирования с открытым исходным кодом. Он статически типизирован, с синтаксисом, свободно полученным из C, с добавлением автоматического управления памятью, безопасностью типов, некоторыми возможностями динамической типизации, дополнительными встроенными типами, такими как массивы переменной длины (называемые слайсами) и сопоставления ключ-значение, и большая стандартная библиотека.