Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Problema no package main

Olá! Estou tendo um problema ao começar o programa.

Aparece um sublinhado vermelho em cima do package main com o seguinte erro:

go build encoding/json: build output "/usr/local/go/pkg/linux_amd64/encoding/json.a" already exists and is not an object file

Alguém sabe o que isso quer dizer?

8 respostas

Olá Maycon, tudo bem?

Poderia por gentileza compartilhar seu projeto, assim consigo te dar um feedback melhor.

Além disso, informe como está a estrutura do seu projeto, quais pastas e arquivos você tem e onde está o main.go.

Fico no aguardo.

: )

Meu código no main.go está assim:

package main

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

var temp = template.Must(template.ParseGlob("templates/*.html"))

func main() {

    fmt.Println("xablau")
    http.HandleFunc("/", index)
    http.ListenAndServe(":8000", nil)
}

func index(w http.ResponseWriter, r *http.Request) {
    temp.ExecuteTemplate(w, "index", nil)
}

O meu arquivo main.go está neste caminho:

/home/mayconb2/go/src/github.com/mayconb2/web-application-go

Dentro da pasta web-application-go tem a pasta templares (dentro o index.htm), o main.go e o README.md

Olá Maycon, como vai?

Muito obrigado por compartilhar as informações do seu código.

Realiza o seguinte teste por gentileza, altera o nome da variável temp para tmpl e tenta subir o servidor e fale se deu certo.

Conte sempre com a Alura!

: )

Oi professor Guilherme!

Fiz o teste conforme indicado, mas o erro persistiu:

package main

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

var templ = template.Must(template.ParseGlob("templates/*.html"))

func main() {

    fmt.Println("xablau")
    http.HandleFunc("/", index)
    http.ListenAndServe(":8000", nil)
}

func index(w http.ResponseWriter, r *http.Request) {
    templ.ExecuteTemplate(w, "index", nil)
}

Ao subir o servidor e carregar o localhost:8080, o site fica carregando, a página fica toda branca e não carrega o template também =/

solução

Olá Maycon, como vai?

Muito obrigado por compartilhar as informações do seu código.

Como está seu arquivo index.html? Compartilha com a gente por favor.

Neste link você tem o arquivo main desta aula e neste link, o index.hml como referência também, se precisar.

Valeu Maycon e conte com a Alura.

Olá professor!

Infelizmente o erro persiste. Eu simplesmente usei o código do repositório indicado (fiz ctrl + c e ctrl + v) e o problema continua. Estou pesquisando bastante na internet mas não acho a solução.

Fazendo alguns testes percebi que o erro se dá na declaração da variável templ. Caso eu comente essa linha, o sublinhado de erro desaparece. Tem algum outro jeito de declarar essa variável de template?

Fala Maycon, tudo bem?

Você poderia compartilhar um link do seu projeto por favor? Pode ser Github ou Drive, assim, consigo te dar um feedback melhor.

Vamos resolver isso juntos, você vai ver!

: )

Professor Guilherme,

Copiei e colei mais uma vez o código e agora deu certo. O VS Code ainda aponta o erro, mas pelo menos dessa vez o servidor subiu. Ainda vou tentar descobrir o porque acontece. Pelo que dei uma olhada no stack overflow da vida, parece que é algo relacionado ao VS Code mesmo.

Obrigado pela ajuda. Pelo menos agora vou conseguir prosseguir com o curso.