【问题标题】:debugging golang in intellij - not finding relative files在intellij中调试golang - 找不到相关文件
【发布时间】:2016-02-18 18:57:18
【问题描述】:

我正在做一个 golang 项目,该项目必须从子目录中读取文件...

在调试我的程序时(不确定it 是什么)在提供相对路径时无法找到文件。我使用io.util.ReadFile(RELATIVE_PATH) 进行此操作。

从终端运行程序时不会出现此问题。

这让我相信 intellij 在后台调试/运行时会弄乱目录结构(将其移动到临时位置?)。如果是这种情况,我将如何配置 intellij 以便将子目录包含在魔术中或删除魔术以便从它所在的目录中调试程序。

我是 golang/intellij 的新手,因此我们将不胜感激。

【问题讨论】:

  • 你的意思是提供一个go文件的相对路径来编译,还是你通过相对路径导入包?
  • 我更新了问题以提供清晰性
  • 文件的相对路径不是相对于源,而是相对于运行二进制文件的位置。从程序中打印工作目录(os.Getwd()),您可以看到它的运行位置。您应该提供一种通过绝对路径查找文件的方法,而不是依赖相对路径。

标签: intellij-idea go


【解决方案1】:

点击“编辑配置”

并将“工作目录”路径更改为您的程序应该“存在”的位置。

【讨论】:

  • 这是正确的答案,该插件在运行配置方面非常灵活,您必须将其指向应用程序的“当前工作目录”应位于的位置(可能与文件/应用程序已存储)。
  • 当你的程序需要访问你工作目录之外的文件时怎么办?喜欢../cmd/otherdirectory/files/file.txt。将配置 Run kind 更改为 Directory 不起作用。有什么想法吗?
猜你喜欢
  • 2022-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多