For example, in my code there is
public enum Color { RED, BLACK }
and I add a color later, that is
public enum Color { RED, BLACK, BLUE }
will this break ABI? That is, does my user need to recompile his Java classes?
For example, in my code there is
public enum Color { RED, BLACK }
and I add a color later, that is
public enum Color { RED, BLACK, BLUE }
will this break ABI? That is, does my user need to recompile his Java classes?
No. According to Java Language Specification:
13.4.26. Evolution of Enums
Adding or reordering constants in an enum will not break compatibility with pre-existing binaries.
Note that even reordering keeps compatibility, unlike in C/C++/C#.