質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

MQTT

MQTT(Message Queue Telemetry Transport)とは、TCP/IPネットワークで利用可能な通信プロトコルの一つで、IoT/M2M向けに開発された軽量なプロトコルです。ヘッダ部分は最小2バイトと小さく、通信量・CPU負荷・電力消費量などを抑えることができます。

Q&A

解決済

2回答

2784閲覧

Herokuにデプロイできない

raspypy

総合スコア247

LINE Messaging API

LINE Messaging APIは、メッセージの送信・返信ができるAPIです。Web APIを経由しアプリケーションサーバとLINEのAPIでやり取りが可能。複数のメッセージタイプや分かりやすいAPIリファレンスを持ち、グループチャットにも対応しています。

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Heroku

HerokuはHeroku社が開発と運営を行っているPaaSの名称です。RubyやNode.js、Python、そしてJVMベース(Java、Scala、Clojureなど)の複数のプログラミング言語をサポートしている。

MQTT

MQTT(Message Queue Telemetry Transport)とは、TCP/IPネットワークで利用可能な通信プロトコルの一つで、IoT/M2M向けに開発された軽量なプロトコルです。ヘッダ部分は最小2バイトと小さく、通信量・CPU負荷・電力消費量などを抑えることができます。

0グッド

1クリップ

投稿2019/02/23 04:00

goをherokuで動かそうとしていますが、デプロイが成功しません。
実行したコマンドを掲載させていただきます。
最後にエラーが発生しているのですが、なにか手順が間違えているのでしょうか。
(最後のエラー以前に、godep go installのコマンドもうまくできていないのでしょうか。)

原因が分からず困っております。
なにかアドバイスをいただけると助かります。

C:\Go\src\appliname>godep save
godep: ignoring stdlib package: appliname

C:\Go\src\appliname>godep go install
main.go:12:2: cannot find package "github.com/eclipse/paho.mqtt.golang" in any of:
C:\Go\src\vendor\github.com\eclipse\paho.mqtt.golang (vendor tree)
C:\Go\src\github.com\eclipse\paho.mqtt.golang (from $GOROOT)
C:\Go\src\vfk\Godeps_workspace\src\github.com\eclipse\paho.mqtt.golang
(from $GOPATH)
C:\Users\xxxxx\go\src\github.com\eclipse\paho.mqtt.golang
main.go:13:2: cannot find package "github.com/line/line-bot-sdk-go/linebot" in a
ny of:
C:\Go\src\vendor\github.com\line\line-bot-sdk-go\linebot (vendor tree)
C:\Go\src\github.com\line\line-bot-sdk-go\linebot (from $GOROOT)
C:\Go\src\appliname\Godeps_workspace\src\github.com\line\line-bot-sdk-go\line
bot (from $GOPATH)
C:\Users\xxxxx\go\src\github.com\line\line-bot-sdk-go\linebot
godep: go exit status 1

C:\Go\src\appliname>git add .
C:\Go\src\appliname>git commit -m "second commit"
[master 95dfa7e] second commit
4 files changed, 149 insertions(+)
create mode 100644 Godeps/Godeps.json
create mode 100644 Godeps/Readme
create mode 100644 ca-certificates.crt
create mode 100644 main.go

C:\Go\src\appliname>git push heroku master
Enumerating objects: 10, done.
Counting objects: 100% (10/10), done.
Delta compression using up to 8 threads
Compressing objects: 100% (8/8), done.
Writing objects: 100% (10/10), 3.08 KiB | 525.00 KiB/s, done.
Total 10 (delta 0), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Go app detected
remote: -----> Fetching jq... done
remote: -----> Checking Godeps/Godeps.json file.
remote: -----> Installing go1.11.5
remote: -----> Fetching go1.11.5.linux-amd64.tar.gz... done
remote: !! Installing package '.' (default)
remote: !!
remote: -----> Running: go install -v -tags heroku .
remote: main.go:12:2: cannot find package "github.com/eclipse/paho.mqtt.golang"
in any of:
remote: /app/tmp/cache/go1.11.5/go/src/github.com/eclipse/paho.mqtt.gola
ng (from $GOROOT)
remote: /tmp/tmp.Lg6Pyzjd0p/.go/src/github.com/eclipse/paho.mqtt.golang
(from $GOPATH)
remote: main.go:13:2: cannot find package "github.com/line/line-bot-sdk-go/lineb
ot" in any of:
remote: /app/tmp/cache/go1.11.5/go/src/github.com/line/line-bot-sdk-go/l
inebot (from $GOROOT)
remote: /tmp/tmp.Lg6Pyzjd0p/.go/src/github.com/line/line-bot-sdk-go/line
bot (from $GOPATH)
remote: ! Push rejected, failed to compile Go app.
remote:
remote: ! Push failed
remote: Verifying deploy...
remote:
remote: ! Push rejected to appliname.
remote:
To https://git.heroku.com/appliname.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/appliname.git'

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

packageをインストールしていないことが原因でした。
goプログラムの中で、次の2つをインポートしているのですが、
この2つのパッケージをgithubにインストールしていないことが原因でした。
mqtt "github.com/eclipse/paho.mqtt.golang"
"github.com/line/line-bot-sdk-go/linebot"

pushの前に、
$ godep go installが上手くできていませんでした。
ありがとうございました。

投稿2019/02/24 13:18

raspypy

総合スコア247

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

このteratailの検索欄に「heroku デプロイ」と入れて検索すると、やまほどひっかかります。
一通り読んでみてはどうでしょう

投稿2019/02/23 06:18

y_waiwai

総合スコア87774

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

raspypy

2019/02/23 08:37

rejectされる原因について、調べてみました。 その中で、heroku createを何度か実行してしまったために、herokuのアプリケーションとリポジトリの関連がおかしくなっていることが原因と考えました。 $ heroku apps を実行すると、 === xxxxyyyyy@yuyuyuyuyu.com Apps appli1 (意図せず作成してしまったもの) appli2 (少し前に作成したもの) appliname (今回作成して、デプロイしたいもの) 2つ関係のないアプリがあったので、削除しました。 削除した後再びpushしてみましたが、状況が変わりません。 ↓のメッセージが出てしまいます。 ! [remote rejected] master -> master (pre-receive hook declined) error: failed to push some refs to 'https://git.heroku.com/appliname.git' 何かアドバイスをいただけると助かります。
y_waiwai

2019/02/23 09:23

pushが失敗するのはリモートとローカルの連携がだめってことなので、最初からやり直してみては。 Guthubのリポジトリを削除>新規作成し(名前やキーなんかは同一でいいです)、改めてpushしてみればどうでしょう
raspypy

2019/02/23 11:58

GitHubのリポジトリを削除するする方法が間違えていたらすみません。 https://git.heroku.com/appliname.git にアクセスして削除しようとしたのですが、 Method Not Allowedと表示されてしまいます。 初歩的なことで申し訳ありませんが、リポジトリの削除の方法が間違えているのでしょうか?
raspypy

2019/02/24 03:26

これまでに行ってきた手順を書かせていただきます。 $ cd \ $ cd go/src $ mkdir appliname $ cd appliname $ echo 'web: appliname' > Procfile $ git init Initialized empty Git repository in C:/Go/src/appliname/.git/ $ git add . $ git commit -m "first commit" [master (root-commit) 1772eac] first commit 1 file changed, 1 insertion(+) create mode 100644 Procfile $ dir C:\Go\src\appliname のディレクトリ $ heroku login $ heroku create appliname -b https://github.com/heroku/heroku-buildpack-go.git Creating ⬢ appliname... done Setting buildpack to https://github.com/heroku/heroku-buildpack-go.git... done https://appliname.herokuapp.com/ | https://git.heroku.com/appliname.git $ heroku config:set --app appliname CHANNEL_SECRET="xxxxxxx" Setting CHANNEL_SECRET and restarting ⬢ appliname... done, v3 CHANNEL_SECRET: xxxxxxxxxxx $ heroku config:set --app appliname CHANNEL_TOKEN="xxxxxxxxxxxx" $ heroku addons:add --app appliname cloudmqtt Creating cloudmqtt on ⬢ appliname... free Created cloudmqtt-curved-39101 as CLOUDMQTT_APIKEY, CLOUDMQTT_URL Use heroku addons:docs cloudmqtt to view documentation $ dir C:\Go\src\appliname のディレクトリ $ godep save godep: ignoring stdlib package: appliname ここまでは、問題ないと考えています。 この後のインストールができていないので、pushが通らないと考えています。 $ godep go install main.go:12:2: cannot find package "github.com/eclipse/paho.mqtt.golang" in any of: C:\Go\src\vendor\github.com\eclipse\paho.mqtt.golang (vendor tree) C:\Go\src\github.com\eclipse\paho.mqtt.golang (from $GOROOT) C:\Go\src\vfk\Godeps\_workspace\src\github.com\eclipse\paho.mqtt.golang (from $GOPATH) C:\Users\xxyyzz\go\src\github.com\eclipse\paho.mqtt.golang main.go:13:2: cannot find package "github.com/line/line-bot-sdk-go/linebot" in a ny of: C:\Go\src\vendor\github.com\line\line-bot-sdk-go\linebot (vendor tree) C:\Go\src\github.com\line\line-bot-sdk-go\linebot (from $GOROOT) C:\Go\src\appliname\Godeps\_workspace\src\github.com\line\line-bot-sdk-go\line bot (from $GOPATH) C:\Users\xxyyzz\go\src\github.com\line\line-bot-sdk-go\linebot godep: go exit status 1 [現象] インストールすると、パッケージが見つからないというメッセージがでてきてしまいます。 ・"github.com/eclipse/paho.mqtt.golang" ・"github.com/line/line-bot-sdk-go/linebot" フォルダの場所も4ヵ所指定されています。 ・C:\Go\src\vendor\github.com ・C:\Go\src\appliname\Godeps\_workspace\src\github.com ・C:\Go\src\github.com ・C:\Users\xxyyzz\go\src\github.com [質問1] いずれのフォルダにも"github.com"というフォルダはありません。 自分で作らなければならないのでしょうか。 [質問2] メッセージにある2つのパッケージは、GitHubから自分でダウンロードして、 github.comフォルダ(自分で作る?) に保存すれば良いのでしょうか。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問