文档章节

Linux下单机版的beego框架的搭建

沙米笔记
 沙米笔记
发布于 2017/03/31 11:44
字数 739
阅读 91
收藏 0

    无网环境下,搭建一个beego的框架,作者在网上搜了好多博客,都是说的是通过go get的方式来实现自动的下载和安装,很是苦恼。无意间经过一个兄弟的提醒,可以将相关的库放在本地就可以了。于是又尝试了一下,由于对GOPATH和GOROOT、go get命令等的理解不深,导致源码放入的位置不对,一直没有成功

1、GOPATH和GOROOT的理解

GOROOT其实就是go的安装路径,如安装在/opt/go下,那么:GOROOT=/opt/go

GOPATH其实就是我们自己的go工作目录(官方的说是作为编译后二进制的存放目的地和import包时的搜索路径),我们可以在src下创建你自己的go源文件, 然后开始工作。如 GOPATH=/home/go

    (1)GOPATH之下主要包含三个目录: bin、pkg、src

    (2)bin目录主要存放可执行文件;

            pkg目录存放编译好的库文件, 主要是*.a文件;

            src目录下主要存放go的源文件

2、go build、go install 、go get的理解

    go build         加上可以编译的go源文件可以得到一个可执行文件。(在go源码所在目录下)
    go install       在编译源代码之后还安装到指定的目录(在GOPATH/bin目录下)
    go get           从指定源上面下载或者更新指定的代码和依赖,并对他们进行编译和安装

3、beego框架的搭建

   (1)在/etc/profile文件中增加如下设置

        export GOROOT=/opt/go   (安装路径)
        export GOPATH=/home/go  (工作路径)
        export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

        执行source  /etc/profile 使其配置生效

    (2)在GOPATH路径下创建bin、pkg、src三个目录

            创建GOPATH/src/github.com/astaxie/beego目录    (github上下的源码存放的地方)

            创建GOPATH/src/github.com/beego/bee目录    (github上下的源码存放的地方)

            将下载的beego和bee安装包解压放在相应的目录中

    (3)在beego和bee目录下执行 go install 进行编译和安装

到此,环境已经搭建成功了。可以检测安装一下

 $ cd $GOPATH/src 
$ bee new hello 
$ cd hello 
$ bee run hello 

一旦程序开始运行,您就可以在浏览器中打开 http://localhost:8080/ 进行访问。

4、总结

(1)go get 的源码放在GOPATH/src目录下

    如:go get github.com/astaxie/beego  则

        将创建GOPATH/src/github.com/astaxie/beego目录,并下载相关源码

  (2)go get 还具有编译安装功能

  (3)如果想无网条件下,执行其他的开源项目,可以直接下载到本地,然后创建相应目录并放入源代码,进行编译和安装即可(在源码下执行go install)

 

© 著作权归作者所有

沙米笔记
粉丝 29
博文 43
码字总数 45024
作品 0
深圳
程序员
私信 提问
分享下鄙人初次搭建go环境和配置beego的心得

最近在公司和领导对go很有兴趣,今天回家就来上手操作一番,之前虽然在公司搭建过go环境,不过也只止步于配个环境变量,命令行里run一下,今天搭建一下beego!废话不多说了,直接上手 1.下载...

工兵铲
2014/04/09
2.1K
1
好程序员大数据笔记之:Hadoop集群搭建

在学习大数据的过程中,我们接触了很多关于Hadoop的理论和操作性的知识点,尤其在近期学习的Hadoop集群的搭建问题上,小细节,小难点拼频频出现,所以,今天集中总结以下笔记,希望对各位同学...

好程序员IT
2019/05/21
17
0
借助URLOS快速安装beego web框架

简介 beego是一个快速开发Go应用的http框架,go 语言方面技术大牛。beego可以用来快速开发API、Web、后端服务等各种应用,是一个RESTFul的框架。 今天我们介绍一种更快速的安装方法,那就是通...

游客icvsasieod266
2019/07/10
0
0
16.centos7上安装kafka

单机版、 集群版 效果: 1.单机版 参考:https://www.linuxidc.com/Linux/2017-01/139732.htm (消费者语法过老) kafka生产者与消费者相关命令行 https://blog.csdn.net/wf3612581/article/...

20190513
2019/06/17
74
0
淘宝SOA框架dubbo学习(2)--搭建Zookeeper注册中心服务

继上一篇博文, 淘宝SOA框架dubbo学习(1) http://my.oschina.net/hanshubo/blog/374974 1、下载 Zookeeper 下载页面地址: http://www.apache.org/dist/zookeeper/zookeeper-3.4.6/ 注:下......

宁宁爸
2015/02/04
1W
1

没有更多内容

加载失败,请刷新页面

加载更多

mysql中int(11)的列大小是多少?

mysql中int(11)的列大小是多少? 以及可以在此列中存储的最大值? #1楼 mysql中int(11)的列大小是多少? (11) int数据类型的此属性与列的大小无关。 它只是整数数据类型的显示宽度。 从11....

技术盛宴
29分钟前
37
0
聊聊artemis消息的推拉模式

序 本文主要研究一下artemis消息的推拉模式 拉模式 receive activemq-artemis-2.11.0/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQMessageConsumer.......

go4it
39分钟前
39
0
vue 全局前置守卫引起死循环的原因与解决方法

我们经常会用到全局前置守卫,如判断用户有没有登陆过,如果登陆过就直接跳到目的页面,如果没有登陆过,就跳转到登陆页。 先看官网对全局前置守卫的介绍 使用 router.beforeEach 注册一个全...

tianyawhl
50分钟前
31
0
如何按索引从std :: vector <>擦除元素?

我有一个std :: vector <int>,我想删除第n个元素。 我怎么做? std::vector<int> vec;vec.push_back(6);vec.push_back(-17);vec.push_back(12);vec.erase(???); #1楼 erase方法将以两......

javail
今天
43
0
使用生成器模拟时间分片

对于cpu密集型任务, 时间分片可以有效减少页面卡顿, 不过对于纯计算型任务还是推荐使用worker在后台做计算 效果图, 计算密集型任务被分到每次只执行16ms, 每次执行完毕留给浏览器时间去响应事...

阿豪boy
今天
63
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部