Protocol Buffer:如何导入?

2024-03-03

我有 2 个 .proto 文件:

第一个文件:

package com.test.model;

message ProtoModel  {
    required CustomObj custom=1;
}

第二个文件:

package com.test.model;

message CustomObj {
    required string smth=1;
}

这里的问题是“CustomObj”被称为“未解析的引用”。 因此,我尝试将第二个文件导入第一个文件:

import "com/test/model/firstFile.proto"

package com.test.model;    

message ProtoModel  {
    required CustomObj custom=1;
}

我仍然遇到同样的问题!


import 语句是相对于您调用位置的文件夹protoc。 看起来您已将其视为相对于包而言。

例如如果(像我一样)你将这两个文件存储在src/main/resources,您可以按如下方式调用协议:

protoc src/main/resources/firstFile.proto src/main/resources/secondFile.proto --java_out=src/generated/java

你的进口声明将是import "src/main/resources/firstFile.proto"

如果您想根据包名称将文件存储在子文件夹中,则只需在顶级文件夹名称之后相应地添加此内容即可。

HTH

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Protocol Buffer:如何导入? 的相关文章

随机推荐