簡體   English   中英

從jar創建實體的(querydsl)元模型

[英]Create (querydsl) metamodel for Entity from jar

我在從我的項目的依賴項中包含的jar中生成的實體生成querydsl元模型(即Q類)時遇到問題。

類(BaseEntity)是我的大多數實體的抽象基類(用@MappedSuperclass注釋),並且出於項目原因和對其他項目的依賴,這個基類必須在一個單獨的jar中。

當我現在將此jar包含為包含我的非抽象實體的項目的依賴項並嘗試生成元模型(使用com.mysema.maven:apt-maven-plugin)時,它無法識別BaseEntity並且抱怨“找不到符號”QBaseEntity。

我通過讓maven將源文件(即BaseEntity.java)解壓縮到依賴項目的另一個源文件夾來解決這個問題,但這有點難看,因為我必須始終記得在發布的情況下更改版本號並且還有我的pom中的源依賴,它也不是很直觀。

所以我的問題是:

  1. 我可以讓querydsl以某種方式從jar生成類的元模型而不將源代碼復制到依賴項目嗎?
  2. 如果這是不可能的:我可以在.class文件而不是.java源文件上運行querydsl元模型生成(我不需要源依賴,只能從現有依賴項中提取.class文件)

非常感謝任何幫助,謝謝

您可以使用QueryEntities批注從主源項目中引用BaseEntity 建議使用包級注釋。

您應該在包中添加info.java文件

@QueryEntities(value = {BaseEntity.class})
package xxxx.xxxx.xxx;

import com.querydsl.core.annotations.QueryEntities;
import xxx.xxxx.BaseEntity;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM