Golang从导入时导入路径无效;“主要”;文件夹

Golang从导入时导入路径无效;“主要”;文件夹,go,import,package,atom-editor,Go,Import,Package,Atom Editor,在过去的几天里,我一直在努力消除安装main.go文件时出现的“无效导入路径:Atom First project/main/Extension”(build)错误,但我一直无法找到错误背后的原因 操作系统-视窗10 IDE-原子 GOBIN-E:\Github Repository\Programming\Golang\bin GOPATH-E:\Github Repository\Programming\Golang 文件目录-E:\Github Repository\Programming

在过去的几天里,我一直在努力消除安装main.go文件时出现的“无效导入路径:Atom First project/main/Extension”(build)错误,但我一直无法找到错误背后的原因

操作系统-视窗10

IDE-原子

GOBIN-E:\Github Repository\Programming\Golang\bin

GOPATH-E:\Github Repository\Programming\Golang

文件目录-E:\Github Repository\Programming\Golang\src\Atom First project\main\main.go

E: \Github Repository\Programming\Golang\src\Atom First project\main\Extension/foo.go

梅因,加油

package main

import (
    "Atom First project/main/Extension"
)

func main() {
    Extension.Extend()
}
foo.go

package Extension

import (
  "fmt"
)

func Extend(){
  fmt.Println("Hello from Extend func")
}

很简单:导入路径不能包含空格

实现限制:编译器可以仅使用属于L、M、N、p和S常规类别的字符(不带空格的图形字符)将ImportPath限制为非空字符串,也可以排除这些字符!“#$%&'()*,:;?[]^`{|}和Unicode替换字符U+FFFD

只需将您的
Atom First项目
文件夹重命名为例如
Atom First项目
,然后更改导入声明

import (
    "atom-first-project/main/Extension"
)
还要注意,包名(通常是文件夹名,但不一定)必须是有效的Go

package子句以每个源文件开头,并定义该文件所属的包

PackageClause  = "package" PackageName .
PackageName    = identifier .

请注意,Go包名称应全部为小写。