From the reference documentation:
eq():
Creates and returns a range forcing the specified value to be equal to the specified numeric expression.
addEq():
Creates and returns a range initialized to represent the equality of the specified value and expression.
The range is added to the invoking model; that is, this method modifies the current model.
So, as you can see, the former only creates an object while the latter also adds that object to the model. I am not sure what you mean by "does not work" but I guess you mean that the equation is not added to the model. As you can see from the reference documentation, this is intended behavior.
#CPLEXOptimizers#DecisionOptimization