QueryDSL: QClass wird generiert, aber Hibernate kann die Zielentität nicht lösenJava

Java-Forum
Anonymous
 QueryDSL: QClass wird generiert, aber Hibernate kann die Zielentität nicht lösen

Post by Anonymous »

Problem < /h2>
Ich arbeite mit Spring Boot 3.2.3 und QueryDSL 5.0.0 in Intellij idee (neueste Version). Ich habe erfolgreich eine QueryDSL -QClass generiert, aber wenn ich versuche, sie zu verwenden, erhalte ich den folgenden Fehler: < /p>

Code: Select all

{   "code": 500,   "message": "org.hibernate.query.sqm.UnknownEntityException: Could not resolve target entity 'BandManagement'" }
< /code>
Die Anweisung in meinem Code ist: < /p>
import static com.softnet.compass_admin.db.phr.entity.device_management.QBandManagement.bandManagement;
< /code>
 Umgebung < /h2>

  Intellij Idee (neueste Version) < /p>
< /li>
  Spring Boot 3.2.3 < /p> < /> < />
     < /li>  Queryds 5.0.0 < /li>
  querydsl 5.0.0 < /li>        < /li>  queryds. /> < /ul>
 Projektstruktur < /h2>
Meine Projektstruktur sieht so aus: < /p>
build
└── generated
└── querydsl [main] sources root
└── generated [main] generated sources root
└── com
└── softnet
└── compass_admin
└── db
└── device
Frage
Warum kann der Hibernate das Bandmanagement enttity nicht beheben, obwohl die QCLASS (

Code: Select all

QBandManagement
) wurde erfolgreich generiert? Wie kann ich dieses Problem beheben?

Code: Select all

// QueryDSL dependencies
implementation "com.querydsl:querydsl-jpa:${queryDslVersion}:jakarta"
annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"

implementation group: 'org.json', name: 'json', version: '20231013'

// Swagger
implementation("org.springdoc:springdoc-openapi-starter-webmvc-ui:2.4.0")
}

// QueryDSL Q-class generation path setup
def querydslDir = "${buildDir}/generated/querydsl"

sourceSets {
main.java.srcDir querydslDir
}

tasks.register('generateQueryDSL', JavaCompile) {
source = sourceSets.main.java
classpath = configurations.compileClasspath
options.annotationProcessorPath = configurations.annotationProcessor
options.annotationProcessorGeneratedSourcesDirectory = file(querydslDir)
options.compilerArgs = [
"-proc:only",
"-processor", "com.querydsl.apt.jpa.JPAAnnotationProcessor"
]
}

tasks.named('compileJava') {
dependsOn('generateQueryDSL')
}

tasks.named('clean') {
doLast {
file(querydslDir).deleteDir()
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post