导入 go 包时出现问题

2024-03-27

这是我的代码结构:

addition
|_ summing
   |_ sum_prg.go
|_ addition.go
|_ go.mod

go.mod 的内容

module addition

go 1.14

sum_prg.go 的内容

package summing

func sumIt(ii int) int {
    return ii + 10
}

addition.go 的内容

package main

import (
    "fmt"
    "summing"
)

func main() {
    fmt.Println("hi")
    fmt.Println(summing.sumIt(1))
}

这是我运行的步骤:

  1. 在版本文件夹内,go mod init 添加

  2. 在 summing 文件夹内,构建

  3. 返回附加,去安装附加

在步骤 3 中,我收到错误“addition.go:5:2: package summing is not in GOROOT (c:\go\src\summing)”

这是我第一次尝试 Go 编程。

我可以成功地按照列出的步骤进行操作here https://golang.org/doc/code.html#ImportingLocal,但是当我尝试遵循相同的步骤时,我看到了上述错误。

我是否总是需要具有 somethng.com/else 形式的模块名称?


你可以从模块常见问题解答 https://github.com/golang/go/wiki/Modules#do-modules-work-with-relative-imports-like-import-subdir

模块是否可以与相对导入(如导入“./subdir”)一起使用?

No. See #26645 https://github.com/golang/go/issues/26645#issuecomment-408572701, 包括:

在模块中,最终有一个子目录的名称。
如果父目录显示“module m" 然后子目录被导入为 "m/subdir", 不再 ”./subdir".

因此,正如评论所述,使用“addition/summing" (with 导出的方法名称 https://tour.golang.org/basics/3) 供您进口main.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

导入 go 包时出现问题 的相关文章

  • RDBMS 对 Golang 的影响 [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我不会对这个关于我测试过的内容和数字运算的问题进行长篇大论 我对最新的实际练习表演更感兴趣 我已经阅读了大量的文章 其中一些非常怀疑 或者非常怀
  • 使用 Terraform(工作区、模块?)配置客户帐户最佳实践?

    我需要在 AWS 中创建和管理多个客户环境 并且希望利用 Terraform 来部署所有必要的资源 每个客户环境基本相同 只是用于访问其中一台服务器的 URL 不同 我已经整理了一个 Terraform 配置 可以为给定客户部署所有资源 但
  • 从 Go 连接到 MySQL 的推荐方式是什么? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个可靠的解决方案来从 Go 连接到 MySQL 数据库 我见过一些库 但很难确定完整性和当前
  • 接受任意切片的 Express 函数

    我想表达一个可以取任何切片的函数 我想我可以这样做 func myFunc list interface for i range list some other fun i where some other fun 本身需要一个interf
  • Ruby:C 类包含模块 M;在 M 中包含模块 N 不会影响 C。什么给出?

    更详细地说 我有一个模块Narf 它为一系列类提供了基本功能 具体来说 我想影响所有继承的类Enumerable So I include Narf in Enumerable Array是一个类 其中包括Enumerable默认情况下 然
  • GAE Golang Gorilla mux - 404 页面未找到

    我在 GAE 中使用 gorilla mux 时遇到一些问题 当我尝试时 我发现 404 页面未找到 未调用 rootHandler 函数 未生成任何痕迹 以下是我的代码的一部分 有什么想法吗 提前考虑 func init r mux Ne
  • 为什么net.DialTimeout一半的时候会超时?

    这是我的测试代码 我设置了6s超时 但是程序只执行了3s 为什么 package main import net import time import fmt func main fmt Println time Now conn err
  • 如何在golang中嵌入其他包的结构

    我知道如何在同一包中的结构中嵌入其他结构 但是如何嵌入其他包的结构 dog go package dog import fmt type Dog struct Name string func this Dog callMyName fmt
  • Heroku 上的 Go 应用程序以及本地软件包

    我正在尝试使用以下命令在 Heroku 上放置一个 Go 应用程序去构建包 https github com kr heroku buildpack go 当它是基本的东西时这很好 但是一旦我做了一个本地包 它就无法编译 这是一个示例设置
  • 错误:无法安全地评估递归定义模块的定义

    我很想了解为什么会发生此错误以及解决该错误的最佳方法是什么 我有几个文件types ml and types mli它定义了一个变体类型value可以是许多不同的内置 OCaml 类型 float int list map set 等 由于
  • protoc-gen-go:无法确定“simple.proto”的 Go 导入路径

    我有包含以下内容的简单原型文件 syntax proto3 package main message Person string name 1 int32 age 2 我正在尝试使用 protoc 为其生成 go 代码 我跑 protoc
  • 无法导入...(没有所需的模块提供包)

    我正在关注本教程 https www martin helmich de en blog kubernetes crd client html 我初始化我的项目并通过以下方式获取依赖项 go mod init github com mart
  • 具有来自包含器类的静态方法调用的 Ruby 模块

    我需要在模块中定义使用包含该模块的类中的方法的常量 module B def self included base class lt lt base CONST self find end end end class A def self
  • Go TCP 读取是非阻塞的

    我正在尝试用 Go 创建服务器和客户端 我已经成功地与服务器和客户端进行通信 但我遇到的问题是golang中的TCP读取是非阻塞的 我想知道 golang 中的读取是否有可能像 C 中的读取一样阻塞 谢谢 EDIT 这是服务器的源代码 fu
  • Go(lang): 如何使用 PPROF 堆分析来查找内存泄漏?

    我正在尝试使用 pprof 来验证内存泄漏 能否解释一下如何读取您在以下位置找到的堆配置文件 http localhost 6060 debug pprof heap debug 1 另外 通过键入web启动后命令go tool pprof
  • 如何列出已安装的 go 软件包

    据我所知go distribution带有某种package manager After go 1 4 1我已经运行的安装go help为了找到任何能够列出本地安装的子命令go packages 但不幸的是没有 那么该怎么做呢 goinst
  • sync.WaitGroup 的示例正确吗?

    这个例子的用法是sync WaitGroup正确的 它给出了预期的结果 但我不确定wg Add 4 和位置wg Done 一次添加四个 goroutine 是否有意义wg Add http play golang org p ecvYHii
  • c.JSON gin.H{()} 输出空对象

    我刚刚开始学习 GO lang 结合 Gin 框架 我决定编写一些简单的 api 来获取有关酒精饮料的数据 我当前的问题是 api get 方法http localhost 8080 alcohol drinks 返回空数据对象 My co
  • Python 上的 io.open() 和 os.open() 有什么区别?

    我意识到open 我一直在使用的函数是一个别名io open 以及导入 from os会掩盖这一点 通过以下方式打开文件有什么区别io模块和os module io open 是文件 I O 的首选高级接口 它将操作系统级文件描述符包装在一
  • Golang xml.Unmarshal 接口类型

    使用xml我在解组非同质类型列表时遇到问题 考虑以下 XML 文档 其嵌套元素是非同质类型的列表

随机推荐

  • 验证正整数

    我只想允许数字字段使用正整数 包括零 如何使用 JSR 303 定义此验证 I tried Min value 0 message msg1 但它允许浮点值 如 1 2 Digits fraction 0 integer 10 messag
  • 线程拥有堆栈和进程拥有堆栈的策略是什么?

    线程拥有堆栈和进程拥有堆栈的策略是什么 如果我们有 10 个进程 那么我们有多少个堆栈 10 个 如果一个进程下有 10 个线程 那么我们有多少个堆栈 1 所有线程共享同一个堆栈 Thanks 如果你考虑一下堆栈是什么 那么共享堆栈是没有意
  • Wordapp 未在线程或并行进程中关闭

    下面的代码通常可以工作 并且在将 docx doc 保存到 pdf 后打开和关闭 word 但是当在线程或并行 for 循环中使用以下代码时 它不会 有任何想法吗 我已经提供了下面的所有代码 这是在函数中使用时工作正常的代码 wordApp
  • 如何正确对整数数组进行排序

    尝试从我知道仅包含整数的数组中获取最高和最低值似乎比我想象的更难 var numArray 140000 104 99 numArray numArray sort console log numArray 我希望这能显示99 104 14
  • Eclipse 在 pom.xml 文件中显示错误:cvc-datatype-valid.1.2.1: '${MYVAR}' 不是 'boolean' 的有效值

    我有一个 Maven 项目 可以在命令行上正常构建 我想在 Eclipse Luna 4 4 1 中编辑项目文件 但是当我加载项目时 它在我的 pom xml 文件中报告以下错误 cvc datatype valid 1 2 1 MYVAR
  • 根据值将逗号分隔的数字列拆分为多列

    我有一个专栏f在我的数据框中 我想根据该列中的值扩展到多个列 例如 df lt structure list f c NA 18 17 10 12 8 17 11 6 18 12 12 NA 17 11 12 Names f row nam
  • 使用特定的 url 地址从 java 代码关闭浏览器

    1 我想使用我的java代码中的url地址关闭特定的浏览器选项卡 因为它是一个客户端服务器应用程序 我想使用客户端应用程序中的 url 地址关闭浏览器选项卡 服务器端将有一个 jar 它将与客户端请求进行通信 并从客户端获取 url 并根据
  • JSON.NET序列化没有属性名称的字典[重复]

    这个问题在这里已经有答案了 大家 我有字典属性名称的 json 序列化问题 这是我的代码 public class MyClass public string A get set public string B get set public
  • 用于调试的 YII 日志记录

    在很多情况下 Xdebug不适合调试 因为它涉及点击运行到特定的代码行 我想使用类似的东西cakePHP调试功能 供开发人员将类的特定属性的值输出到浏览器 我在用Yii framework这是我的配置yii log in the main
  • 如何实例化对象的静态向量?

    我有一个 A 类 它有一个静态对象向量 对象属于 B 类 class A public static void InstantiateVector private static vector b vector of B 在函数 Instan
  • 修改现有的 Android ROM 以控制用户操作

    我正在为客户创建一个 Android 应用程序 该应用程序将预安装并与手机一起分发 现在客户要求我锁定 ROM 以防止未来的用户使用除此应用程序之外的任何其他应用程序 IE 没有浏览 没有电子邮件 没有任何可能产生任何费用的东西等 现在 经
  • 在 CMD 批处理脚本中调用标签时如何利用超过 9 个参数?

    我想知道如何在调用标签时在批处理脚本中调用超过 9 个参数 例如 下面显示我分配了 12 个参数 并尝试回显所有这些参数 CALL LABEL one two three four five six seven eight nine ten
  • Kafka消费者默认组ID

    我正在使用 Apache Kafka 及其 Java 客户端 我发现消息在属于同一组的不同 Kafka Consumer 之间进行负载平衡 即共享相同的组 id 在我的应用程序中 我需要所有消费者阅读所有消息 所以我有几个问题 如果我没有在
  • 在 IntelliJ IDEA 中编写并运行 pyspark

    我正在尝试在 IntelliJ 中使用 Pyspark 但我不知道如何正确安装它 设置项目 我可以在 IntelliJ 中使用 Python 并且可以使用 pyspark shell 但我无法告诉 IntelliJ 如何查找 Spark 文
  • 如何在Python中导入其他项目的函数?

    我在一个项目中有一些代码 我想在另一个项目中重用它们 我需要做什么 在两个文件夹中 才能执行此操作 目录结构类似于 Foo Project1 file1 py file2 py Bar Project2 fileX py fileY py
  • 在单个查询中获取分页行和总计数

    核心要求 查找 a 的最新条目person id by submission date对于指定的过滤条件type plan status 可能有更多这样的过滤器 但无论如何 按提交日期返回最新的逻辑是相同的 有两个主要用途 一是在 UI 中
  • Android setContentView 还是 Intents?

    我有一个非常简单的 2 屏幕 Android 应用程序 简单地通过 setContentView 切换布局有什么缺点吗 或者我应该使用意图吗 如果出现问题 我不想打扰我的应用程序 另一件需要考虑的事情是 活动形成了stack http de
  • 从重叠的日期范围中获取不同的连续日期范围

    我需要从重叠日期列表中获取彼此不重叠的日期范围列表 并获取重叠期间的硬币总和 我尝试过用谷歌搜索一个例子 但到目前为止还没有运气 我可能没有使用正确的关键词 我有一个重叠日期的列表 1 1 2018 31 1 2018 80 7 1 201
  • 有没有一种方法可以使用 JavaScript 在网页中漂亮地打印 JSON?

    在我看来 漂亮打印 JSON 是一个足够简单的任务 JavaScript 应该能够处理它 有没有人编写过 或运行过 JavaScript 函数来执行此操作 执行此操作的一个简单方法是执行 JSON stringify data null w
  • 导入 go 包时出现问题

    这是我的代码结构 addition summing sum prg go addition go go mod go mod 的内容 module addition go 1 14 sum prg go 的内容 package summin