解决Goland 同一个package中函数互相调用的问题

使用的为 goland 碰到同一个 package 互相调用,编译显示函数未定义,

原因为默认按file 编译,默认没有编译version.go

解决方法

设置按照 package 编译就可以了

补充:goland以package形式 编译代码

命令源码文件:独立程序的入口 包含无结果无参数的main函数

库源码文件:放置可供其他代码使用的程序实体

goland以package形式 编译代码

1.配置gopath

在File菜单里找到settings,点击gopath!

配置如下:

2.项目结构如下,需创建三个文件夹:bin pkg src

src:放置源文件

bin:存储可执行文件

pkg:放置归档文件 :在Linux下是.a文件,即程序编译后生成的静态库文件。

3.配置gobuild

程序即可运行。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • goland设置颜色和字体的操作

    如下所示: 补充:Goland调整Terminal窗口字体大小 Goland的Ternimal窗口样式和Console窗口公用同一个样式,修改路径: Setting->Editor->Color Scheme->Console Font 若不生效,重启一下IDE即可. 以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们.如有错误或未考虑完全的地方,望不吝赐教.

  • Mac GoLand打不开(闪退)也不报错的解决方案

    Mac用过GoLand,电脑应用初始化后就打不开了,下其他版本也不行 原因就是之前的配置文件还在需要清理: /Users/你的文件/Library/Preferences/ 配置文件在这个文件下 补充:Windows下Goland无法启动问题 最近使用Goland的时候遇到了无法启动的问题(双击启动程序后,无反应),使用的是Windows 10系统,查找网上解决方案后仍无法启动. 重装也无法解决问题,下面提供一种解决思路: 思路: 怀疑是系统有与Goland相关文件没有删除干净.把Goland卸

  • goland 设置project gopath的操作

    用goland打开别人的go项目.可能碰到下面的问题goland cannot find package "server/common/config" in any of: 这是因为没有设置项目的gopath 设置方法 补充:Goland创建Go project 配置当前project GOPATH 1. new project 取消勾选index entire GOPATH GOPATH是项目部署和构建目录,默认是c:\user\xxx\go文件夹,go get命令下载的第三方包都会

  • goland 恢复已更改文件的操作

    1.查看历史更改文件 点击项目名,右键,选择Local History. 或点击项目名再点击VXA,选择Local History. 然后选择Show History 2.恢复历史已更改文件 选择你想要恢复的文件,右键选择Revert,最后就会恢复到原来的位置了. 补充:goland文件处理 golang是优秀的软件编程语言,由于golang很好的兼容各个系统,我经常使用golang写工具. 写工具经常会用到文件处理,io操作. FileInfo接口 在遍历文件夹的时候回经常用到FileInfo

  • goland 实现自动格式化代码

    1.利用File Watchers goland->Preferences->搜索框内输入 file watchers->选择File Watchers->点击右边的左下角的 + 号->选择go fmt 模板->弹出设置框,默认选项->点击确定->确定 设置成功后,在编写go 文件时就会自动格式化你的代码,如果没有生效,请重启下 2.利用goland 代码提交工具 goland 自带的git 提交工具里,点击提交按钮->弹出页面里勾上Go fmt-&g

  • Goland 断点调试Debug的操作

    第一步:进入编辑模式 第二步:开始进行编辑 第三步:就可以进行调式了 补充:goland断点调试报错 一.运行报错 runnerw.exe: CreateProcess failed with error 216 \(no message available\) 解决办法: 查看package是不是main,同时必须有个main函数,作为程序运行的主入口 查看GOOS是不是本系统的,比如windows,得设置为同一个,cmd中使用set GOOS=windows,goland中设置方法如下: 二

  • goland 清除所有的默认设置操作

    前不久用goland时,不小心将.tpl文件默认为.go文件.然后就开始报错,setting找了很久,由于英语比较差,翻译了很久还是没有找到恢复默认设置的选项. 最后找到了另一种解决方法.如果有知道怎么在setting中清除设置的朋友,麻烦回复一下啦. 在我首次创建.tpl文件时出现以下选项,因为系统并不知道.tpl文件是什么,所以首次创建需要你选择文件类型. limo当时脑子一热就选了.go文件,所以开始报错 我的解决方法是找到如下路径(系统是Window7) 删除文件(清除了所有的设置) 重

  • 如何让shell终端和goland控制台输出彩色的文字

    终端输出彩色文字 开发工具:Mac,Goland,Mac自带shell.这是基于Mac的测试结果,根据读者留言,在Windows上不生效,标识符不一样. 在终端输出这段命令,将的到一个红色背景.绿色文字,并不停闪烁的输出. sszxr:~ sszxr$ echo -e "\033[5;32;41mI ♡ You \033[0m" I ♡ You sszxr:~ sszxr$ 双引号中的反斜杠\表示转义,033是标识符,表示用来设置颜色,[表示开始颜色设置,m为颜色设置结束.[后面的5表

  • 解决Goland 同一个package中函数互相调用的问题

    使用的为 goland 碰到同一个 package 互相调用,编译显示函数未定义, 原因为默认按file 编译,默认没有编译version.go 解决方法 设置按照 package 编译就可以了 补充:goland以package形式 编译代码 命令源码文件:独立程序的入口 包含无结果无参数的main函数 库源码文件:放置可供其他代码使用的程序实体 goland以package形式 编译代码 1.配置gopath 在File菜单里找到settings,点击gopath! 配置如下: 2.项目结构

  • Go语言中同一个package中函数互相调用为undefined的解决

    目录 同一个package中函数互相调用为undefined的解决 解决方案 同一个package下不同文件中函数调用报未定义问题 解决方式大致有两种 总结 同一个package中函数互相调用为undefined的解决 代码如下: package main import "fmt" func main() { myFunc() } func init() { fmt.Println("there is main.init()") } package main imp

  • Python中函数参数调用方式分析

    本文实例讲述了Python中函数参数调用方式.分享给大家供大家参考,具体如下: Python中函数的参数是很灵活的,下面分四种情况进行说明. (1) fun(arg1, arg2, ...) 这是最常见的方式,也是和其它语言类似的方式 下面是一个实例: >>> def fun(x, y): return x - y >>> fun(12, -2) 14 (2) fun(arg1, arg2=value2, ...) 这种就是所谓的带默认参数的函数,调用的时候我们可以指定

  • nodejs中函数的调用实例详解

    一.调用本js文件中的函数 var http = require('http'); http.createServer(function (request,response){ response.writeHead(200, {'Contet-Type':'text/html;charset=utf-8'}); if(request.url!=='/favicon.ico'){ funl(response); response.end(''); } }).listen(8000); consol

  • 解决WPF附加属性的Set函数不调用的问题

    今天写程序的时候用到了附加属性,我是用VS内置的propa的代码段来实现的,代码如下: class Attach { public static bool GetIsEnabled(DependencyObject obj) { return (bool)obj.GetValue(IsEnabledProperty); } public static void SetIsEnabled(DependencyObject obj, bool value) { obj.SetValue(IsEnab

  • 实例讲解Python中函数的调用与定义

    调用函数: #!/usr/bin/env python3 # -*- coding: utf-8 -*- # 函数调用 >>> abs(100) 100 >>> abs(-110) 110 >>> abs(12.34) 12.34 >>> abs(1, 2) Traceback (most recent call last): File "<stdin>", line 1, in <module&

  • 解决@Cacheable在同一个类中方法调用不起作用的问题

    @Cacheable在同一类中方法调用无效 上述图片中,同一个类中genLiveBullets()方法调用同类中的queryLiveByRoom()方法,这样即便标识了Cacheable标签,再次调用时也没有走缓存. cacheable不支持内部方法调用的方式,需要修改为把请求缓存的改成service方式,Aservice中的genLiveBullets()调用Bservice中的queryLiveByRoom() 见下图,已测试再次调用时为走的缓存. @Cacheable的使用总结 @Cach

  • 浅谈golang package中init方法的多处定义及运行顺序问题

    在不了解这个问题之前,在网上搜索一下竟然搜出了两个完全相反的结果,所以打算自己测试下这个问题. 首先给出结论: 在同一个package中,可以多个文件中定义init方法 在同一个go文件中,可以重复定义init方法 在同一个package中,不同文件中的init方法的执行按照文件名先后执行各个文件中的init方法 在同一个文件中的多个init方法,按照在代码中编写的顺序依次执行不同的init方法 下面看下测试的代码: 在当前目录下新建main.go及testinit目录,在testinit目录下

  • 关于JS中setTimeout()无法调用带参函数问题的解决方法

    本文实例分析了JS中setTimeout()无法调用带参函数问题的解决方法.分享给大家供大家参考,具体如下: 解决方法:重写setTimeout() 方法,需要用到闭包函数.如下: var _st = window.setTimeout; window.setTimeout = function(fRef, mDelay){ if (typeof fRef == 'function') { var argu = Array.prototype.slice.call(arguments, 2);

  • 在vue中使用回调函数,this调用无效的解决

    let self = this //使用新变量替换this,以免this无效 //updateStudentInfoToServer是一个将本身部分数据异步上传的接口,接收三个参数,其中第一个是数据,第二.三个是函数,第二.三个函数使用function(){}形式书写 updateStudentInfoToServer:function(data, networkOk, networkError){ let postData = this.$qs.stringify({ data:data })

随机推荐