Метод не определен при попытке использовать его внутри других классов в src main.JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Метод не определен при попытке использовать его внутри других классов в src main.

Сообщение Anonymous »

Проблема при попытке создания методов с помощью Lombok. Проблема в том, что «Метод/конструктор/и т. д. не определен для типа…». Я сталкиваюсь с этим для любых классов, расположенных в src/main/java, но при использовании того же класса в src/test/java во время тестирования я не получаю никаких ошибок и результаты верны. Позвольте мне объяснить ситуацию немного подробнее:
  • если я попытаюсь использовать сгенерированный метод внутри другого класса в src/main, чтобы получить некоторые данные, выдает ошибку о неопределенном методе.
  • Когда я удаляю методы Lombok и пишу свои собственные, никаких проблем не возникает.
  • Ошибка отсутствует, если я использую методы, сгенерированные lombok, внутри классов в каталоге src/test/java
Фрагмент кода:

Код: Выделить всё

public class DroolsRuleParsing {
public static String checkLombokMethods(RuleFormat rule) {
String constraintItems = null;

if (rule.getRuleType().equalsIgnoreCase("item")) {
constraintItems = "$hit_idList contains $appliedrule_hitId";
}
if (rule.getRuleType().equalsIgnoreCase("hit")) {
constraintItems = "$hit_id == $appliedrule_hitId";
}
return constraintItems;
}
}
Ошибка: метод getRuleType() не определен для типа RuleFormat.
Если я удалю этот метод и попытаюсь использовать .getRuleType() в src /test/java, то ошибок нет:

Код: Выделить всё

@Test
public void testRuleGeneration() throws Exception {
LOG.info("Testing rule generation from JSON");
RuleFormat RuleData = new RuleFormat();
RuleData.setId("unique_id_4");
RuleData.setUid("rule_4");
RuleData.setName("Rule 4");
RuleData.setVersion("ver1");
RuleData.setRuleType("item");
LOG.info("check lombok getters {}", RuleData.getRuleType());

Код: Выделить всё

2024-09-26 17:06:12,572 [main] INFO  check lombok getters item
Я использую чистый тест mvn; mvn clean install, чтобы проверить, работает ли созданный метод.
Я пробовал:
  • следуя руководству по синталляции на официальном сайте для установки Lombok - https://projectlombok.org/setup/maven - инструкция здесь
  • повозился с настройкой в ​​pom-файле , некоторые советовали удалить "область" из pom.xml - не помогло
  • переустановка расширений кода VS с помощью Lombok (Lombok Поддержка аннотаций для кода VS)


Подробнее здесь: https://stackoverflow.com/questions/790 ... n-src-main
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»