Windows 10家庭中文版,go version go1.11 windows/amd64,

Eclipse IDE for C/C++ Developers Photon Release (4.8.0),

GoClipse 0.16.1(v201607061938),

紧接着上一篇博文,现在孤可以是使用Eclipse开发Go程序了:建立项目、建立源文件、编译、运行、测试、调试……

本文介绍自己使用Eclipse运行第一个Go Project的过程以及其中踩到的坑。

建立项目

下面的 D:\eclipse-cdt\ws 为Eclipse的 工作空间——后来更改了,更改后,还需要配置一遍Window->Preferences->Go:

项目建立成功:

上图的项目树结构中,src初步理解为放源码,bin存放编译、运行、调试等产生的可执行文件(细节需dig),Build Targets很重要,涉及到后面的一个 坑 的调试。

建立源程序

这一步自己犯错了——Go语言对项目的目录结构是有一些规定的(看的一些网络博文也有提到,还需dig),而自己把程序直接就放在了src目录下:

在项目的src下生成了源文件 new_file.go:

修改为自己需要的测试程序:

package main 

import (
"fmt"
) func main() {
fmt.Println("Here I come!")
}

执行程序——遇到 问题(第一个) 了,执行不了:

Resource doesn't have a corresponding Go package.

后在Run Configurations中选择Go Application运行时,出现下面的提示:

查看一些文章后,在src下新建pkg1,并将上面的源文件放入其中:

再次执行程序,第二个问题出现了——在项目所在bin目录下没有找到可执行文件:

经过查找,在Go安装目录的bin下面找到了可执行程序——pkg1.exe——可是,为什么呢?:

“误打误撞”打开了项目下的Build Targets,显示了项目的 属性对话框(Properties for go961):

发现其中的(Optional) Path of generated executable显示为使用默认(Use default),可是,默认又是什么呢?

看过上面的内容后,自己并不知道如何解决问题!于是,试验!

打开Run Configurations,“胡乱地”修改其中的配置,并运行程序(读者可以略过这一部分,因为其中的一些配置是错误的):

由于前面自己发现项目编译运行后产生的可执行文件跑到Go安装目录下的bin文件夹中了,于是,把Run Configurations里面的Path of launch executable取消Use default,并配置可执行程序的路径为Go安装目录下的本项目可执行文件:

再次执行,Eclipse中运行程序成功,得到了预期结果!

可是,俺还是像可执行程序出现在项目的bin目录下啊!为什么会这样呢?查阅一些网络资料(费时费力啊)后,“灵光一闪”!好像自己1周前安装Go时,好像配置了一个环境变量GOBIN来着,是因为它引起的吗?

删除这个环境变量!!!

重新配置Run Configurations——恢复为选中使用Use default:

再次运行项目——成功!项目的bin目录下出现了可执行程序pkg1.exe了!

好了,第一个Go程序就这么运行起来了!

180906 1806补充说明:

1.更换Eclipse的Workspace

在测试过程中,自己更换了一次Eclipse的工作目录——Window->Preferences->Startup and Shutdown->Workspaces:

选中其中的Prompt for workspace on startup,重启Eclipse即可更改工作目录。

下图显示,更换工作目录后,Eclipse存在两个工作目录了,最新的存在于最上方,也是下次启动时的默认工作目录。

2.Go项目导入

在更换工作目录后,再次打开Eclipse,发现之前的项目go961不存在了——因为新的工作目录下没有这个项目。

自己知道Eclipse是有项目导入功能的,于是,执行项目导入(注意,导入前项目已被自己拷贝到新的工作目录中):

导入项目出现错误:

导入项目没有GOROOT、GOPATH:

Window->Preferences->Go中的各个工具为空:

解决方法:取消选择gofmt下的User default location,在一个一个手动配置好。

然后打开Run Configurations查看运行配置,再执行:此时到导入项目的Go package to build为空,执行失败!

修改Run Configurations配置,重新执行:成功!

3.设置项目默认编码为UTF-8

默认为系统的GBK,修改为UTF-8:

鉴于后面的项目都可能是UTF-8编码,因此,修改整个Eclipse的 工作目录编码为UTF-8:

Window->Preferences->General->Workspace

虽然做了全局的配置,但孤以为,还是应该在新建项目时 单独配置其编码为UTF-8——移植项目时就不会因为Eclipse的默认编码不同而出错了吧(猜的)!

4.建立第二个项目:成功!

--------分割线--------

可是,自己还存在不少疑问:

1.各个Go语言的环境变量有什么意义?

2.GOBIN会影响使用go命令安装软件吗,比如gocode、guru等,孤发现之前安装guru时,不光C:\Go\bin下面有guru.exe,在GOPATH下也存在一个guru.exe。

3.在新建Go源文件时,有三个选项,分别表示什么源文件呢?

在选择源文件类型为Command Source File时,其下出现三个可选项,又分别代表什么意思呢?在哪些应用中可以用到?

5.Build Targets要怎么配置?Go项目的属性又要怎么配置?

6.Run Configurations下的Build Command又需要怎么配置?

7.使用go.exe安装了软件,除了前面搭建开发环境需要的,还可以安装哪些软件?

8.GoClipse是2016年的,太过时了吧?Google官方用什么IDE进行Go开发呢?

9.Go语言的常见应用领域有哪些?怎么让它发挥出更大的功效呢?

10.Go语言怎么会GitHub等配合使用?前面发现可以下载安装GitHub上的程序,那么,上传到自己的程序库呢?

11.Go语言有哪些 标准库?第三方库?

……

问题很多,还需要更加深入才行啊!之前看到别人用Go语言写Web服务器,感觉很牛啊!其它的Web开发都是借助于线程的Web服务器呢!

还有,Go语言的强项是什么?抓住其强项进行学习!之前学习Python,就没有采用这种策略,结果,在爬虫、Web开发上花了不少时间(几个月),以至于现在对于使用Python进行大数据处理分析、人工智能等开发一片空白!所以,学习Go语言得换换策略才行!

前面看过菜鸟的Go语言教程了,目前不记得有什么特别困难的点了。

那么,接下来,了解Go语言的应用场景、补足基础知识的缺失了!

还好可以访问它的墙内官网了!否则自己又会向Android开发一样放弃了吧!

使用Eclipse运行第一个Go程序的更多相关文章

  1. 搭建java开发环境、使用eclipse编写第一个java程序

    搭建java开发环境.使用eclipse编写第一个java程序 一.Java 开发环境的搭建 1.首先安装java SDK(简称JDK). 点击可执行文件 jdk-6u24-windows-i586. ...

  2. 运行第一个Hadoop程序,WordCount

    系统: Ubuntu14.04 Hadoop版本: 2.7.2 参照http://www.cnblogs.com/taichu/p/5264185.html中的分享,来学习运行第一个hadoop程序. ...

  3. Spark认识&环境搭建&运行第一个Spark程序

    摘要:Spark作为新一代大数据计算引擎,因为内存计算的特性,具有比hadoop更快的计算速度.这里总结下对Spark的认识.虚拟机Spark安装.Spark开发环境搭建及编写第一个scala程序.运 ...

  4. 运行第一个ruby程序

    0x00 安装 首先需要安装一个ruby的环境,ruby分为win.linux.macOS版本.不用系统安装方法略有差异,不在这进行讲解. 0x01 运行第一个ruby程序 我这里是win环境,打开命 ...

  5. 运行第一个python程序,python 变量,常量,注释

    一.运行第一个python程序: print('Hello,world') 保存为.py文件 在cmd窗口: python3x:python  py文件路径 回车 python2x:python  p ...

  6. 编译运行第一个Java程序——通过示例学习Java编程3

    作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=13 在本教程中,我们将了解如何编写.编译和运行Ja ...

  7. OpenCV学习笔记(一)安装及运行第一个OpenCV程序

    1.下载及安装 OpenCV是一套开源免费的图形库,主要有C/C++语言编写,官网: http://opencv.org/ .在 http://opencv.org/downloads.html 可以 ...

  8. 运行第一个Python程序

    Python的三种运行方式 交互式解释器 在终端输入python3 进入python交互式解释器 输入exit()退出交互式解释器 命令行脚本 创建python脚本 通过命令执行程序 python h ...

  9. [IOS]从零开始搭建基于Xcode7的IOS开发环境和免开发者帐号真机调试运行第一个IOS程序HelloWorld

    首先这篇文章比较长,若想了解Xcode7的免开发者帐号真机调试运行IOS程序的话,直接转到第五部分. 转载请注明原文地址:http://www.cnblogs.com/litou/p/4843772. ...

随机推荐

  1. Spring源码学习:DefaultAopProxyFactory

    /* * Copyright 2002-2015 the original author or authors. * * Licensed under the Apache License, Vers ...

  2. ESXi 20181229 刚学到的知识点

    1. 查看性能 能够获取到服务器的电源消耗 这里很明显的就能看到 2路服务器的情况下 电源在300w 以下,  平均值 270w 左右. 2. 然后在配置里面能够看到 服务器的信息 设置还能看到 序列 ...

  3. const和typedef的常见用法详解

    一.说说const 一般而言,const主要是用来防止定义的对象再次被修改,定义对象变量时要初始化变量. 常见用法如下: 1.用于定义常量变量,这样这个变量在后面就不可以再被修改 const int ...

  4. XShell中文乱码问题解决

    现象:XShell终端中输入中文显示乱码 原因:XShell终端的编码格式与服务器不同 解决:修改XShell终端的编码格式:菜单中点击,文件->属性->终端->编码,选择“UTF- ...

  5. 使用ajax异步上传文件或图片(配合php)

    //html代码 <form enctype="multipart/form-data" id="upForm"> <input type=& ...

  6. python自动化之鼠标移动

    ################################用GUI自动化控制键盘和鼠标############################### ''' http://pyautogui.r ...

  7. hdu 6301 Distinct Values (2018 Multi-University Training Contest 1 1004)

    Distinct Values Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)T ...

  8. 【BZOJ1078】[SCOI2008]斜堆(性质题)

    [BZOJ1078][SCOI2008]斜堆(性质题) 题面 BZOJ 洛谷 题解 考虑一下这道题目的性质吧.思考一下最后插入进来的数是什么样子的.首先因为它是最后插入进来的,所以一定是比某个数小,然 ...

  9. NOI Linux的安装说明以及使用指南

    安装 本人的安装环境为Win10. 1. 首先从官网上下载一个CCF官方提供的Noi linux虚拟机以及安装文档 传送门 2. 然后,安装一个VMware Workstation 14 Pro,这里 ...

  10. 第七节 认识SpringMVC中的表单标签

    所谓成熟,就是:你要习惯,任何人的忽冷忽热:也要看淡,任何人的渐行渐远: --胖先生 SpringMVC的表单标签 回顾: JSTL标签 --C标签 FMT标签 自学:JSP如何自定义标签[开源社区当 ...