go创建web项目分别在windows和linux部署

简介: go创建web项目分别在windows和linux部署

转载请注明出处:

1.通过idea 创建go项目,并指定go版本,以及创建main.go 的入口类

  创建的项目名称为:go_web_test1,  main.go 中代码如下:

package main
import (
    "fmt"
    "net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hello, World!")
}
func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

package main


import (

   "fmt"

   "net/http"

)


func handler(w http.ResponseWriter, r *http.Request) {

   fmt.Fprintf(w, "Hello, World!")

}


func main() {

   http.HandleFunc("/", handler)

   http.ListenAndServe(":8080", nil)

}

  最基础的web的目录结构和代码如下:

           

  注意事项,main.go 中的package 必须为 package main,程序才能运行。

  如果不是package main,在编译启动程序时报错:package command-line-arguments is not a main package

2.在windows下编译发布启动

  进入到项目的目录结构下面,使用 go build -o project_name.exe  ,进行编译和打包项目

go build -o go_web_test1.exe

  运行这个命令之后,会生成一个 对应的 exe 文件,在windows 上双击就可以运行该程序了。

  由于在项目的main.go 中定义了一个最基本的接口路由处理,服务启动之后,访问该api:

                 

  可以看到调用该api后返回的接口数据:hello ,world

3.在linux环境下编译发布启动

  将刚刚编写的go_web_test1 项目代码上传到linux,并删掉在windows 编译的 exe文件,在linux上通过go build 进行重新编译。  

go build

  在linux上执行之后生成了一个 项目名称对应的二进制文件,当在Linux上使用go build命令编译Go Web项目时,默认情况下会生成一个名为与包名相同的可执行文件,没有文件扩展名。这个文件就是一个可执行的二进制文件,它包含了Go程序的机器码和相关的元数据。

             

  通过 ./go_web_test 就可以启动,

           

  进行接口调试:

       

 

标签: GO

目录
相关文章
|
23天前
|
Unix Linux Ruby
在windows和linux上高效快捷地发布Dash应用
在windows和linux上高效快捷地发布Dash应用
|
23天前
|
Ubuntu Linux 虚拟化
安装Windows Linux 子系统的方法:适用于windows 11 版本
本文提供了在Windows 11系统上安装Linux子系统(WSL)的详细步骤,包括启用子系统和虚拟化功能、从Microsoft Store安装Linux发行版、设置WSL默认版本、安装WSL2补丁,以及完成Ubuntu的首次安装设置。
65 2
|
10天前
|
Linux 开发者 Python
从Windows到Linux,Python系统调用如何让代码飞翔🚀
【9月更文挑战第10天】在编程领域,跨越不同操作系统的障碍是常见挑战。Python凭借其“编写一次,到处运行”的理念,显著简化了这一过程。通过os、subprocess、shutil等标准库模块,Python提供了统一的接口,自动处理底层差异,使代码在Windows和Linux上无缝运行。例如,`open`函数在不同系统中以相同方式操作文件,而`subprocess`模块则能一致地执行系统命令。此外,第三方库如psutil进一步增强了跨平台能力,使开发者能够轻松编写高效且易维护的代码。借助Python的强大系统调用功能,跨平台编程变得简单高效。
13 0
|
20天前
|
iOS开发 Android开发 MacOS
从零到全能开发者:解锁Uno Platform,一键跨越多平台应用开发的神奇之旅,让你的代码飞遍Windows、iOS、Android、macOS及Web,技术小白也能秒变跨平台大神!
【8月更文挑战第31天】从零开始,踏上使用Uno Platform开发跨平台应用的旅程。只需编写一次代码,即可轻松部署到Windows、iOS、macOS、Android及Web(通过WASM)等多个平台。Uno Platform为.NET生态带来前所未有的灵活性和效率,简化跨平台开发。首先确保安装了Visual Studio或VS Code及.NET SDK,然后选择合适的项目模板创建新项目。项目结构类似传统.NET MAUI或WPF项目,包含核心NuGet包。通过简单的按钮示例,你可以快速上手并构建应用。Uno Platform让你的技术探索之旅充满无限可能。
23 0
|
22天前
|
Linux Windows Python
最新 Windows\Linux 后台运行程序注解
本文介绍了在Windows和Linux系统后台运行程序的方法,包括Linux系统中使用nohup命令和ps命令查看进程,以及Windows系统中通过编写bat文件和使用PowerShell启动隐藏窗口的程序,确保即使退出命令行界面程序也继续在后台运行。
|
JavaScript 中间件 程序员
Goji —— 基于 Go 语言的微型 web 框架
Goji 是一个基于 Go 的微型 web 框架,其设计受到了 Sinatra 的启发。
451 0
Goji —— 基于 Go 语言的微型 web 框架
|
10天前
|
程序员 Go PHP
为什么大部分的 PHP 程序员转不了 Go 语言?
【9月更文挑战第8天】大部分 PHP 程序员难以转向 Go 语言,主要因为:一、编程习惯与思维方式差异,如语法风格和编程范式;二、学习成本高,需掌握新知识体系且面临项目压力;三、职业发展考量,现有技能价值及市场需求不确定性。学习新语言虽有挑战,但对拓宽职业道路至关重要。
40 10