我正在尝试使用maven原型将一些现有架构迁移到OLP。软件包名称应该是什么样的命名约定?我们正在辩论应该是“ com.here.hdlm.protobuf.schema”还是“ com.here.schema.hdlm.protobuf”。也许我们甚至应该从名称中跳过protobuf。
谢谢。
答案 0 :(得分:0)
您绝对应该使用将项目名称放在颠倒的互联网域名和公司名称https://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html之后的约定, 即“ com.here.hdlm”
关于“ protobuf.schema”,“ schema.protobuf”还是跳过protobuf,这取决于您。
作为其他参考- https://developer.here.com/olp/documentation/data-user-guide/portal/schemas-creating.html
答案 1 :(得分:-1)
HERE Artifact Service仅托管Protobuf模式。我建议不要在名称中使用单词“ protobuf”和“ schema”,因为这暗示并会使软件包名称更长。
Protobuf Schema发布文档的一部分与命名有关:https://developer.here.com/olp/documentation/archetypes/dev_guide/topics/archetypes-best-practices.html
这是本节的内容:
包装命名
系统提示您定义组ID,工件ID和程序包名称 在生成模式项目的阶段用于您的模式。如果你 不指定任何软件包名称,而是使用组ID。
组ID和工件ID用于生成模式的HERE 将模式上载到OLP后,资源名称(HRN)。例如, HMC建筑足迹模式的HRN为 hrn:here:schema :::: com.here.schema.rib:building-footprints_v2:2.13.0。
该包名称用于protobuf,Java和Scala包中 名称。
对于组ID,请使用您公司的反向域名,例如 com.here.schema.rib。
对于工件ID,请使用特定于打包的模式类型的名称 在项目中,例如建筑足迹。尽量保持神器 ID越短越好。
此外,请确保架构的主要版本已包含在其中 您的包裹名称。例如,版本2.3应具有v2作为 软件包名称的一部分,例如:com.here.platform.schema.foo.v2。 软件包名称中还包含主要版本 已由Package Validator中的主要版本验证。
我们建议遵循Java包命名约定。