Open moovida opened 6 years ago
Thanks a lot @moovida for reporting this issue. Currently AssertJ Swing still requires Java 8. Now we know the term "or higher" ends at least with Java 11, so we have to work on that.
The exception above shows that the FailOnThreadViolationRepaintManager
is the problem. Did you try to run your tests without it? Would be nice to have a feedback if the rest of the framework is still working.
Realistically this issue might be open for a while ... :/
Hi @croesch , yes, I ran the tests without that one and they all passed. I well understand you in that the issue might be open for a while. In fact everything still works well. But yeah, this might become an issue at some point. Anyway, thanks for everything!
Hi @moovida can you give some additional information about your environment because #229 seems to be related in a way that clicking seems to be broken with Java 11. Didn't you notice some behavior like that in your tests?
Hi @croesch , I am on ubuntu with :
Apache Maven 3.5.2
Maven home: /usr/share/maven
Java version: 11.0.1, vendor: Oracle Corporation
Java home: /home/hydrologis/SOFTWARE/JAVA/JDKS/jdk-11.0.1
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.15.0-38-generic", arch: "amd64", family: "unix"
and using:
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-swing-junit</artifactId>
<version>3.8.0</version>
<scope>test</scope>
</dependency>
I am not sure about the clicking thing though. Is there something I can do to check this?
Illegal reflective access in fest-reflect also mentioned in #237
Hi there!
Is anyone working on this issue? It is a real blocker for us...
I don't think so, contributions welcome ;-)
Hi, We are having the same issue with Java 11. This is our pom dependencies:
The code it's running seems like it's just trying to get the current repaint manager:
Object repaintManager = method("appContextGet").withReturnType(Object.class).withParameterTypes(Object.class)
.in(SwingUtilities.class).invoke(RepaintManager.class);
Whereas in the public API there is this:
RepaintManager repaintManager = RepaintManager.currentManager((Component) null);
There's no @since
tag on the method so I can't guess when it was added, but it's certainly available in JDK 8.
Whereas in the public API there is this:
RepaintManager repaintManager = RepaintManager.currentManager((Component) null);
There's no @since tag on the method so I can't guess when it was added, but it's certainly available in JDK 8.
By checking OpenJDK commit history, it have already existed from a start of OpenJDK project, which has "initial load" commit message. It means JDK 7 and later has it.
Hi, on java 11 I get the following test warnings due to illegal reflective access: