play querydsl plugin 通过包限制Qclass生成
play querydsl plugin Limiting Qclass generation by package
我正在使用 play framework
版本 2.2.0 并使用 play-querydsl
插件。
我正在使用 Spring Data JPA
与 play framework
集成的 1.7.2 版。
我没有将 querydsl
用于所有模型 classes,并且仅用于 Spring Data JPA
不支持的少数场景,例如在 WHERE 子句中混合多个 AND、OR 检查。
因此,我想将 play-querydsl
插件生成的 QClasses
限制为仅几个包,而不是所有包含 ENTITY classes.
的包
我参考了 https://github.com/CedricGatay/play-querydsl 并将 QueryDSLPlugin.queryDSLPackage
条目添加到我的 build.sbt
中,如下所示:
playJavaSettings ++ QueryDSLPlugin.queryDSLSettings
QueryDSLPlugin.queryDSLPackage := "com.codetroopers.app.models"
但在此之后,当我尝试使用激活器构建播放应用程序时,Q classes 没有生成。当我从我的 build.sbt
文件中删除 QueryDSLPlugin.queryDSLPackage
条目时,Q classes 是为模型包内的所有 ENTITY classes 正常生成的。
有没有办法将插件生成的 Q class 限制为仅几个包或仅包?
维杰
查看插件的 0.1.2 版 - 它刚刚发布。根据文档:
//From Play 2.3 and onward (thanks to autoImport feature)
queryDSLPackage := "com/codetroopers/app/models"
//OR Up to play 2.2
QueryDSLPlugin.queryDSLPackage := "com/codetroopers/app/models"
我正在使用 Play 2.3 并且可以确认它现在按预期工作(递归扫描 com/codetroopers/app/models 下的所有内容)。
我正在使用 play framework
版本 2.2.0 并使用 play-querydsl
插件。
我正在使用 Spring Data JPA
与 play framework
集成的 1.7.2 版。
我没有将 querydsl
用于所有模型 classes,并且仅用于 Spring Data JPA
不支持的少数场景,例如在 WHERE 子句中混合多个 AND、OR 检查。
因此,我想将 play-querydsl
插件生成的 QClasses
限制为仅几个包,而不是所有包含 ENTITY classes.
我参考了 https://github.com/CedricGatay/play-querydsl 并将 QueryDSLPlugin.queryDSLPackage
条目添加到我的 build.sbt
中,如下所示:
playJavaSettings ++ QueryDSLPlugin.queryDSLSettings
QueryDSLPlugin.queryDSLPackage := "com.codetroopers.app.models"
但在此之后,当我尝试使用激活器构建播放应用程序时,Q classes 没有生成。当我从我的 build.sbt
文件中删除 QueryDSLPlugin.queryDSLPackage
条目时,Q classes 是为模型包内的所有 ENTITY classes 正常生成的。
有没有办法将插件生成的 Q class 限制为仅几个包或仅包?
维杰
查看插件的 0.1.2 版 - 它刚刚发布。根据文档:
//From Play 2.3 and onward (thanks to autoImport feature)
queryDSLPackage := "com/codetroopers/app/models"
//OR Up to play 2.2
QueryDSLPlugin.queryDSLPackage := "com/codetroopers/app/models"
我正在使用 Play 2.3 并且可以确认它现在按预期工作(递归扫描 com/codetroopers/app/models 下的所有内容)。