最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

java - Delombok Xtext Configuration error: cannot find symbol - Stack Overflow

programmeradmin1浏览0评论

I am working on a project that uses Lombok, Xtext, and QueryDSL, and I’m running into an issue. Specifically, I need Xtext to use delomboked files for further code generation, instead of the original files with Lombok annotations. The problem is that I see many errors in the console, such as “cannot find symbol” for the Q-classes and the classes generated by Xtext, which are used in my Java classes. The issue arises because these classes are generated after delombok runs, which is causing the errors during the delombok step.

The error in delombok state looks like this within INFO message, when I do mvn clean package from terminal or IDE:

[INFO] --- lombok:1.18.20.0:delombok (default) @ ART-Impl ---
/ART-Impl/src/main/java/com/core/domain/model/customer/CustomersRepository.java:3: error: package com.core.domain.model.customer.QCustomer does not exist
import static com.core.domain.model.customer.QCustomer.Constants.customer;
                                                                             ^
ART-Impl/src/main/java/com/core/domain/model/customer/CustomersRepository.java:18: error: cannot find symbol
import com.core.domainposite.QCustomerComposite;

And I have pom like this :

        <plugin>
                <groupId>.projectlombok</groupId>
                <artifactId>lombok-maven-plugin</artifactId>
                <version>1.18.20.0</version>
                <executions>
                    <execution>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>delombok</goal>
                        </goals>
                        <configuration>
                            <addOutputDirectory>false</addOutputDirectory>
                            <outputDirectory>${delombok.dir}</outputDirectory>
                            <sourceDirectory>${src.dir}</sourceDirectory>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>.eclipse.xtext</groupId>
                <artifactId>xtext-maven-plugin</artifactId>
                <configuration>
                    <compilerSourceLevel>11</compilerSourceLevel>
                    <compilerTargetLevel>11</compilerTargetLevel>
                </configuration>
                <executions>
                    <execution>
                        <id>xtext.generate.sources</id>
                        <configuration>
                            
                            <javaSourceRoots>
                                <sourceRoot>${delombok.dir}</sourceRoot>
                            </javaSourceRoots>
                            <sourceRoots>
                                <sourceRoot>${delombok.dir}</sourceRoot>
                                <sourceRoot>
                                    ${project.basedir}/src/main/resources</sourceRoot>
                                <sourceRoot>
                                    ${project.build.directory}/generated-sources/java</sourceRoot>
                            </sourceRoots>
                        </configuration>
                    </execution>
                    <execution>
                        <id>xtext.generate.test.sources</id>
                        <configuration>
                            
                            <javaSourceRoots>
                                <sourceRoot>${delombok.dir}</sourceRoot>
                            </javaSourceRoots>
                            <sourceRoots>
                                <sourceRoot>
                                    ${project.basedir}/src/main/resources</sourceRoot>
                                <sourceRoot>
                                    ${project.build.directory}/generated-sources/java</sourceRoot>
                                <sourceRoot>
                                    ${project.build.directory}/generated-test-sources/java</sourceRoot>
                            </sourceRoots>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>com.mysema.maven</groupId>
                <artifactId>apt-maven-plugin</artifactId>
                <version>1.1.3</version>
                <executions>
                    <execution>
                        <phase>generate-sources</phase>
                        <goals>
                            <goal>process</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>
                                target/generated-sources/annotations</outputDirectory>
                            <processor>
                                com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

Can you help with how this should be correctly done? To not have errors in console.

发布评论

评论列表(0)

  1. 暂无评论
ok 不同模板 switch ($forum['model']) { /*case '0': include _include(APP_PATH . 'view/htm/read.htm'); break;*/ default: include _include(theme_load('read', $fid)); break; } } break; case '10': // 主题外链 / thread external link http_location(htmlspecialchars_decode(trim($thread['description']))); break; case '11': // 单页 / single page $attachlist = array(); $imagelist = array(); $thread['filelist'] = array(); $threadlist = NULL; $thread['files'] > 0 and list($attachlist, $imagelist, $thread['filelist']) = well_attach_find_by_tid($tid); $data = data_read_cache($tid); empty($data) and message(-1, lang('data_malformation')); $tidlist = $forum['threads'] ? page_find_by_fid($fid, $page, $pagesize) : NULL; if ($tidlist) { $tidarr = arrlist_values($tidlist, 'tid'); $threadlist = well_thread_find($tidarr, $pagesize); // 按之前tidlist排序 $threadlist = array2_sort_key($threadlist, $tidlist, 'tid'); } $allowpost = forum_access_user($fid, $gid, 'allowpost'); $allowupdate = forum_access_mod($fid, $gid, 'allowupdate'); $allowdelete = forum_access_mod($fid, $gid, 'allowdelete'); $access = array('allowpost' => $allowpost, 'allowupdate' => $allowupdate, 'allowdelete' => $allowdelete); $header['title'] = $thread['subject']; $header['mobile_link'] = $thread['url']; $header['keywords'] = $thread['keyword'] ? $thread['keyword'] : $thread['subject']; $header['description'] = $thread['description'] ? $thread['description'] : $thread['brief']; $_SESSION['fid'] = $fid; if ($ajax) { empty($conf['api_on']) and message(0, lang('closed')); $apilist['header'] = $header; $apilist['extra'] = $extra; $apilist['access'] = $access; $apilist['thread'] = well_thread_safe_info($thread); $apilist['thread_data'] = $data; $apilist['forum'] = $forum; $apilist['imagelist'] = $imagelist; $apilist['filelist'] = $thread['filelist']; $apilist['threadlist'] = $threadlist; message(0, $apilist); } else { include _include(theme_load('single_page', $fid)); } break; default: message(-1, lang('data_malformation')); break; } ?>