I'm use Golang 1.11 with module support, So my project is not put in $GOPATH
I am want to compile proto
file,
My files structure
my TaskInfo.proto
syntax = "proto3";
package chaochaogege.filecatcher.common;
option go_package = "common";
import "chaochaogege.com/filecatcher/common/ChunkInfo.proto";
message TaskInfo{
string name = 1;
string storePath = 2;
uint32 workersNum = 3;
uint32 totalSize = 4;
repeated chaochaogege.filecatcher.common.ChunkInfo chunkInfo = 5;
}
ChunkInfo.proto
syntax = "proto3";
package chaochaogege.filecatcher.common;
option go_package = "common";
message ChunkInfo{
uint32 startBytes = 1;
uint32 endBytes = 2;
uint32 totalBytes = 3;
uint32 downloaded = 4;
uint32 orderId = 5;
}
go.mod
module chaochaogege.com/filecatcher
require (
github.com/golang/protobuf v1.2.0
)
When I run follow (in filecatcher/common directory)
protoc --go_out=./ TaskInfo.proto
protoc said:
chaochaogege.com/filecatcher/common/ChunkInfo.proto: File not found.TaskInfo.proto: Import "chaochaogege.com/filecatcher/common/ChunkInfo.proto" was not found or had errors.
TaskInfo.proto:13:14: "chaochaogege.filecatcher.common.ChunkInfo" is notdefined.
I have googled, But all of questions are not about go module
Did I use wrong import path or My config is not correct?
If Stackoverflow cannot anwser my question, I think it's a bug. I should go to Github issue for report..