From the Javadoc for VerifyError:
Thrown when the "verifier" detects that a class file, though well formed, contains some sort of internal inconsistency or security problem.
This error can be caused by compiling against one version of a class or library and then running against a different version of the class/library. This answer gives quite a good explanation.
Exception Details:
Location: controllers/IndicatorUploadController.updateIndicatorTable(Lcontrollers/IndicatorUploadController$ExcelInd;I)V @563: astore_3
Reason:
Type 'controllers/IndicatorUploadController$ExcelInd' (current frame, locals
[5]) is not assignable to 'models/Indicators' (stack map, locals[5])
It looks like your controller has an inner class called ExcelInd
, which is a subclass of your Indicators
model class. It also looks like there is a line in your updateIndicatorTable
method that attempts to assign a value of actual type ExcelInd
to a reference of type Indicators
. This sounds valid, but in the code that is actually running there doesn't seem to be an inheritance relationship between the two classes.
If you've recently introduced this inheritance relationship, I would try running the clean
task in your Play console and seeing whether a clean sorts out your issue.