Intellij idea 在intellij中调试golang-未找到相关文件

Intellij idea 在intellij中调试golang-未找到相关文件,intellij-idea,go,Intellij Idea,Go,我正在进行一个golang项目,该项目必须从子目录读取文件 调试我的程序时,如果提供了相对路径,它(还不确定它是什么)无法定位文件。我正在使用io.util.ReadFile(相对路径)进行此操作 从终端运行程序时不会出现此问题 这让我相信intellij会在幕后调试/运行一些东西,它会破坏目录结构(将其移动到临时位置?)。如果是这种情况,我将如何配置intellij,以便子目录包含在magic中,或者删除magic,以便从程序所在的目录中调试程序 我是刚来golang/intellij的新手,

我正在进行一个golang项目,该项目必须从子目录读取文件

调试我的程序时,如果提供了相对路径,它(还不确定它是什么)无法定位文件。我正在使用
io.util.ReadFile(相对路径)
进行此操作

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

这让我相信intellij会在幕后调试/运行一些东西,它会破坏目录结构(将其移动到临时位置?)。如果是这种情况,我将如何配置intellij,以便子目录包含在magic中,或者删除magic,以便从程序所在的目录中调试程序

我是刚来golang/intellij的新手,希望您能给予我帮助

点击“编辑配置”

并将“工作目录”路径更改为程序应该“驻留”的位置


您的意思是提供要编译的go文件的相对路径,还是通过相对路径导入软件包?我更新了问题以澄清文件的相对路径与源无关,而是与运行二进制文件的位置有关。从程序中打印工作目录(
os.Getwd()
),您可以看到它的运行位置。不要依赖相对路径,你应该提供一种通过绝对路径查找文件的方法。这是正确的答案,插件的运行配置非常灵活,你必须将它指向应用程序的“当前工作目录”所在的位置(可能与文件/应用程序的存储位置不同).当您的程序需要访问工作目录以外的文件时,该怎么办?比如
。/cmd/otherdirectory/files/file.txt
。将配置运行种类更改为目录将不起作用。有什么想法吗?