tuxji commented on PR #986:
URL: https://github.com/apache/daffodil/pull/986#issuecomment-1464058594
For whoever is troubleshooting, this error is reproducible when the branch
is locally checked out, but it puzzles me why one jline class cannot find a
method of another jline class at runtime. A new method was added to a jline
class and another jline class called it. The new method should be callable
since both classes are packaged in the same jar, yet the call is failing for
some reason I haven't been able to find:
```
java.lang.NoSuchMethodError: 'org.jline.utils.AttributedString
org.jline.utils.AttributedString.fromAnsi(java.lang.String, java.util.List,
java.lang.String, java.lang.String)'
at
org.jline.reader.impl.LineReaderImpl.fromAnsi(LineReaderImpl.java:4188)
```
If you check the diffs for
terminal/src/main/java/org/jline/utils/AttributedString.java in
<https://github.com/jline/jline3/compare/jline-parent-3.22.0...jline-parent-3.23.0>,
you will see that method was added to that class and the other class was
modified to call that new method as well. I have downloaded the jline-3.23.0
jar, confirmed that both classes are in the jar, and verified that the new
method is present in the jline class's public methods:
```shell
interran@GH3WPL13E:~/jline$ javap -public
org/jline/utils/AttributedString.class
Compiled from "AttributedString.java"
public class org.jline.utils.AttributedString extends
org.jline.utils.AttributedCharSequence {
...
public static org.jline.utils.AttributedString fromAnsi(java.lang.String,
java.util.List<java.lang.Integer>, java.lang.String, java.lang.String);
...
}
```
Good luck.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]