windows - 无法在 IntelliJ IDEA 中创建 .go 文件

标签 windows go intellij-idea plugins

我正在使用带有 golang 插件的 Intellij IDEA Community 2016.3。

最近在 Intellij 中我创建了一个新包,然后我尝试在该包中创建一个新的 go 文件。 Intellij 给了我一个模板错误信息,像这样:

Unable to parse template "Class" Error message: This template did not produce a Java class or an interface - during New -> Java Class

(为了创建文件,我右键单击了包并选择了New > Go File。) 然后我进入文件系统并手动创建文件。短暂的停顿后,Intellij 关闭了左侧列出我所有包的 Pane 。 Intellij 还损坏了项目,以至于我无法再次查看项目 Pane 。

我重新创建了该项目,现在一切似乎都很好,但我不想每次创建 .go 文件时都必须再次执行所有这些操作。

我不知道这是否有影响,但我尝试在其中创建文件的包是从 github 下载的。 Intellij 一直告诉我这个:

The directory C:\go-workspace\src\gopl.io is under Git, but is not registered in the Settings. 

这是别人的项目——用于学习的文件——我不打算发送任何拉取请求。我只是在那里创建了包和文件,因为它们是学习 go 的一部分。

如何在 Intellij 中创建 .go 文件?

1 月 21 日添加:

这是我的项目设置: enter image description here

最佳答案

确保您获得了 Go setup properly在继续之前。

接下来我还要确保插件设置良好(可能在确保你的 go 设置正常后重新安装),例如项目 SDK 设置为 Go 而不是 Java,因为这通常是默认设置(见下图) ) 并且 IntelliJ 可以检测到您的 GOPATH。

enter image description here

如果您正在处理的项目之前不是 IntelliJ 模块,而您只是打开它,请确保 .iml 文件是 Golang 模块(IntelliJ 通常会要求您自动执行此操作,如果它尚未完成,但我假设您需要先将项目 SDK 设置为 Go)

即(我的 hello.iml);

<?xml version="1.0" encoding="UTF-8"?>
<module type="GO_MODULE" version="4">
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$" />
    <orderEntry type="inheritedJdk" />
    <orderEntry type="sourceFolder" forTests="false" />
    <orderEntry type="library" name="GOPATH &lt;hello&gt;" level="project" />
  </component>
</module>

这是入门设置的全面分步指南; https://rootpd.com/2016/02/04/setting-up-intellij-idea-for-your-first-golang-project/

关于windows - 无法在 IntelliJ IDEA 中创建 .go 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41754270/

相关文章:

windows - DOS 批处理文件 - 显示带有两个选项的弹出消息

windows - 如何使用 Windows API 将菜单背景渐变复制或复制到位图上?

nginx - 将 nginx 配置为端口 80 和 443 上的反向代理,用于在 8000 上运行的 webapp。如何禁用与端口 8000 的连接?

macos - 在 golang 中使用 exec.Command,如何打开一个新终端并执行命令?

java - 下载并在Windows 32位操作系统安装的IntelliJ

java - 获取 IntelliJ Kotlin 插件和 gradle 进行匹配

Windows ISO 8601 时间戳

javascript - 如何在 NodeJS 中使用 ffi 单击?

arrays - 创建一个没有 make 的 Go slice

intellij-idea - 禁用 IntelliJ 反向分析