任何人都可以帮我解决这个GoLand终端错误

I'm new to using GoLand IDE and I'm getting a small problem when running my go web app. The code isn't compiling when the Terminal is used. Again, Keep in mind that I'm new.

Here is the problem: The terminal duplicated the command prompt when I make an attempt at running the code. Thanks in Advanced.

C:\Users\Evan\go\src\awesomeProject9>go run main.go

C:\Users\Evan\go\src\awesomeProject9>

 package main

import (
  "fmt"
  "html/template"
  "net/http"
)

var tpl *template.Template

func init(){
  template.Must(template.ParseGlob("templates/*.html"))
}

func main() {
  http.HandleFunc("templates/index", idx)
  http.ListenAndServe("8000", nil)
  fmt.Println("hello World")
}

func idx(w http.ResponseWriter, r *http.Request){
  tpl.ExecuteTemplate(w, "templates/index.html", nil)
}

Thanks to @zerkms for pointing out, that I was wrong. I simply ran into the exact mistake I tried to warn you later on:

you really should use the err returned by called functions, since these really help you a lot! For startes simply:

err := http.ListenAndServe("8000", nil)
if err != nil {
  log.Fatal(err)
}

This panics with:

2018/12/18 10:43:16 listen tcp: address 8000: missing port in address

the correct line should be

err := http.ListenAndServe(":8000", nil)

WRONG only for documentation

ListenAndServe doesn't block the further code execution....