当前位置: 首页 > 面试题库 >

导入和未使用错误

丁文轩
2023-03-14
问题内容

我收到以下导入代码出现错误:

代码:包主

import (
    "log"
    "net/http"
    "os"
    "github.com/emicklei/go-restful"
    "github.com/emicklei/go-restful/swagger"
    "./api"
)

错误:

.\main.go:9: imported and not used: "_/c_/Users/aaaa/IdeaProjects/app/src/api"

鉴于我已经将package api文件存储在api文件夹下,因此导入不起作用是有原因的吗?

我正在下面使用api在main.go中

func main() {
    // to see what happens in the package, uncomment the following
    restful.TraceLogger(log.New(os.Stdout, "[restful] ", log.LstdFlags|log.Lshortfile))

    wsContainer := restful.NewContainer()
    api := ApiResource{map[string]OxiResp{}}
    api.registerLogin(wsContainer)
    api.registerAccount(wsContainer)
    api.registerLostLogin(wsContainer)
    api.registerWallet(wsContainer)
}

问题答案:

编译器会寻找包的 实际使用 ..而不是它存在的事实。

您需要使用该软件包中的某些内容。或删除导入。例如:

v := api.Something ...

如果您在源文件中不使用该包中的任何内容,则无需导入。也就是说,除非您希望init函数运行。在这种情况下,您可以使用忽略符号import _

编辑:

更新之后,您似乎在这里覆盖了包导入:

api := ApiResource{map[string]OxiResp{}}

声明了一个名为的变量api。现在,编译器认为它是一个变量,因此您实际上并没有使用该api包..您正在使用该api变量。

您有几种选择。

首先,您可以将该变量称为其他变量(可能是我会做的事情):

apiv := ApiResource{map[string]OxiResp{}}

或者,为您的导入添加别名(尽管不是我会做的..但是还是一个选项):

import (
    // others here
    api_package "./api"
)

问题在于,编译器对使用什么感到困惑。该api包..或者api你声明的变量。

您还应该通过GOPATH而不是相对地导入软件包。



 类似资料:
  • 问题内容: 我正在尝试导入具有数字和字母数字值的列(从.csv文件),但是当我运行该过程时,它会正确导入数字行,但对于字母数字值,默认为。 表A 使用的代码 我用过,一点都没有改变。 问题答案: 问题原因是Oledb提供程序 导入具有混合数据类型列的csv文件或excel文件时,它将用替换非主要类型。( 使用Oledb或Ace.Oledb ) 解决方法 您可以通过添加包含字符串值的第一行,然后在完

  • 我想将Django项目从测试服务器迁移到Apache(CentOS上的2.2.15版本)。我使用[1]安装了mod_wsgi,并尝试使用[2]将我的项目装载为wsgi应用程序。 我遵循Hello-World示例(有帮助的SO-thread[3]),放置了测试wsgi。py文件与我现有的Django项目文件(wsgi.py)位于同一目录中。这是可行的(例如,我可以通过wget访问)。 在此基础上,我

  • 问题内容: 借助Halfdans的建议,在首先安装git之后,我能够成功使用goinstallgithub.com/hoisie/web.go而没有任何错误。但是,现在当我尝试编译给出的示例代码时,go找不到了Web包。我得到了错误 关于此代码 为了识别包装,我需要做些特别的事情吗?我在$ GOROOT / src / pkg / github.com / hoisie / web.go / we

  • 我正试着用这本手册开始tensorflowhttps://www.tensorflow.org/install/install_windows 所有安装都成功完成,我正在使用python 3.5.2和最新版本的pip,遇到这个错误,有人告诉我应该怎么做吗? 在swig\parth\AppData\Local\Programs\Python35\lib\site-p tensorflow\Pytho

  • 我正在尝试使用mod_wsgi在Ubuntu 16.04上通过apache安装flask应用程序。问题是wsgi脚本无法导入任何python模块。 我已经验证了wsgi脚本是可执行的,并用python独立运行了它。我还验证了我的flask应用程序可以自己运行,没有错误。我能够在我运行的任何其他python程序中导入所有模块。我还安装了带有pip和源代码的烧瓶。似乎什么都没用。 这是我的错误日志:

  • 问题内容: 我在VirtualMachine之类的软件包中找到了一些用于调试的类,但是我不能使用它,因为Sun JDK7中似乎不存在该软件包。 如何使用此套件? 顺便说一句。我想要的不一样 问题答案: 根据此页面,链接到的类是仅在JDK(而非JRE)中分发的文件的一部分。它说 … “ 更新说明2: Attach API位于tools.jar中,因此您需要在CLASSPATH中添加/lib/tool