登录
首页 >  Golang >  Go问答

本地构建顺利完成,CircleCI 构建却失败

来源:stackoverflow

时间:2024-03-06 16:36:26 257浏览 收藏

学习Golang要努力,但是不要急!今天的这篇文章《本地构建顺利完成,CircleCI 构建却失败》将会介绍到等等知识点,如果你想深入学习Golang,可以关注我!我会持续更新相关文章的,希望对大家都能有所帮助!

问题内容

我正在尝试对导入进行一些实验,但现在陷入了困境,在 circleci 中简单导入包失败了,而它可以在本地成功构建。任何人都可以分享什么是错误的或者我做错了什么而不允许在 circleci 中构建代码吗?

回购结构:

- project
    --- main.go
    --- graphic
    ----- graphics.go

main.go 导入定义:

package main

    import (
        "bufio"
        "flag"
        "fmt"
        "io/ioutil"
        "log"
        "os"
        "strings"

        graphic "../project/graphic"
    )

graphics.go 导入定义:

package graphic

    import (
        "fmt"
        "io/ioutil"
        "log"

        "github.com/fogleman/gg"
    )

circleci config.yml:

version: 2
jobs:
  build:
    docker:
      - image: circleci/golang:1.9

    working_directory: /go/src/github.com//project
    steps:
      - checkout

      # specify any bash command here prefixed with `run: `
      # - run: go get -v -t -d ./...

      - run: 
          name: run filesystem path configuration
          command: |
            pwd
            pwd -p
            echo $goroot
            echo $gopath
            export gobin=$gopath/bin
            echo $gobin
            export path=$path:$gobin
            ls -latr $goroot
            ls -latr $gopath
            ls -latr $gobin
            go env
      - run:
          name: run dependecy managament
          command: |
            go get -v -u github.com/golang/dep/cmd/dep
            go get -v -u github.com/fogleman/gg
            go get -v -u github.com/aws/aws-sdk-go/aws
            go get -v -u github.com/aws/aws-sdk-go/aws/session
            go get -v -u github.com/aws/aws-sdk-go/service/cloudwatch
      - run:
          name: run documentation
          command: |
            godoc -v -index -timestamps main
      - run:
          name: run tests
          command: |
            go vet -v ./...
      - run:
          name: run build and deploy
          command: |
            dep init
            mkdir build
            dep ensure
            go build -v -o build/main.exe main.go
      - run:
          name: run qa
          command: go test -v main.go

      - store_artifacts:
          path: ./build

失败错误消息:

#!/bin/bash -eo pipefail
    dep init
    mkdir build
    dep ensure
    go build -v -o build/main.exe main.go
      Using ^1.3.0 as constraint for direct dep github.com/fogleman/gg
      Locking in v1.3.0 (0403632) for direct dep github.com/fogleman/gg
      Locking in master (cff245a) for transitive dep golang.org/x/image
      Using ^1.23.3 as constraint for direct dep github.com/aws/aws-sdk-go
      Locking in v1.23.3 (fbdf1bd) for direct dep github.com/aws/aws-sdk-go
      Locking in master (e2365df) for transitive dep github.com/golang/freetype
      Locking in  (c2b33e84) for transitive dep github.com/jmespath/go-jmespath
    graphic/graphics.go:8:2: cannot find package "_/go/src/github.com//project/vendor/github.com/fogleman/gg" in any of:
        /usr/local/go/src/_/go/src/github.com//project/vendor/github.com/fogleman/gg (from $GOROOT)
        /go/src/_/go/src/github.com//project/vendor/github.com/fogleman/gg (from $GOPATH)
    Exited with code 1

解决方案


我认为如果您使用包管理器(例如 DEP 或其他),您的情况将会解决。

理论要掌握,实操不能落!以上关于《本地构建顺利完成,CircleCI 构建却失败》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>