【问题标题】:How to generate classes with duplicate name in separate packages using jsonschema2pojo?如何使用 jsonschema2pojo 在单独的包中生成具有重复名称的类?
【发布时间】:2017-02-05 07:30:14
【问题描述】:

我正在使用jsonschema2pojo-maven-plugin (0.4.19) 从 JSON 文件生成 Java 类。

我有 2 个 JSON 文件,它们具有具有不同属性的相同字段“xyz”。 因此,一旦我从第二个 JSON 文件生成“xyz”类,它就会替换第一个“xyz”类。

有没有办法在单独的包中创建第二类,或者有没有其他方法可以避免这个问题?

【问题讨论】:

  • 尝试为每个模式定义不同的javaType 属性。来自this_issue --- 显然,我可以添加如下使用“javaType”属性来强制生成该类,但这也迫使我将 java 代码引用放入我感觉不对的架构中。跨度>

标签: java maven jsonschema2pojo


【解决方案1】:

将每个 JSON 文件移动到源包中的不同子文件夹:

${basedir}/src/main/resources/schema/request/request.json
${basedir}/src/main/resources/schema/response/response.json

然后用这个配置:

<configuration>                    
    <sourceDirectory>${basedir}/src/main/resources/schema</sourceDirectory>
    <targetPackage>com.example.types</targetPackage>                   
</configuration>

将生成2个目标包:

com.example.types.request.*
com.example.types.response.*

【讨论】:

    猜你喜欢
    • 2019-09-02
    • 2016-09-20
    • 2017-03-28
    • 2018-08-17
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多