Я столкнулся с аналогичной проблемой.
Caused by: java.lang.NoSuchMethodError: com.abc.Employee.getEmpId()I
Наконец, я определил, что основной причиной было изменение типа данных переменной.
Employee.java
-> Содержит переменную (EmpId
), тип данных которой изменен с int
на String
. ReportGeneration.java
- -> Извлекает значение с помощью getter, getEmpId()
. Мы должны отменить банку, включив только измененные классы. Поскольку изменений в ReportGeneration.java
не было, я включил только файл Employee.class
в Jar. Мне пришлось включить файл ReportGeneration.class
в банку, чтобы решить проблему.