[RT-33954] static block...causes IllegalStateException - re-open?

Kevin Rushforth kevin.rushforth at oracle.com
Tue Apr 8 15:27:24 UTC 2014


-- Kevin

Kevin Rushforth wrote:
> Stephen F Northover wrote:
>> Right, I jumped in mid-thread.  The link points to an IntelliJ issue 
>> that talks about launching only.
>> IntelliJ inserts its own launcher and this isn't great, but do we 
>> have concrete problems or JIRA that are caused by this?
> Yes we have concrete problems (but no JIRA yet) caused by this. This 
> "feature" of IntelliJ prevents the initializing of the specified app 
> class from being done on the FX application thread. I will file an FX 
> JIRA and follow up.
> -- Kevin
>> Steve
>> On 2014-04-08 9:21 AM, Kevin Rushforth wrote:
>>> Note that this feature request is only somewhat related to the issue 
>>> at hand. Yes we would like IntelliJ (and Eclipse) to recognize and 
>>> launch JavaFX application subclasses with no main method, but the 
>>> issue here is that IntelliJ (unlike the other IDEs) inserts its own 
>>> launcher class in front of the program you are running, which causes 
>>> the Java launcher to not recognize that it is being asked to launch 
>>> a JavaFX program. So we could either file a new JIRA or maybe add 
>>> the additional information to the existing one that Richard filed.
>>> Either way, we need to document this on our Wiki to warn IntelliJ 
>>> users of this.
>>> -- Kevin
>>> Stephen F Northover wrote:
>>>> The two ways of launching are equivalent however, at one point, we 
>>>> did not run main() even when main() was available and this caused 
>>>> problems on the desktop.  Lots of code was written that expected 
>>>> main() to run and this code was broken.  We will be supporting both 
>>>> ways of launching an FX application for the foreseeable future, 
>>>> however, the IDE's still need to understand that FX applications 
>>>> that only contain start() are launchable.
>>>> Steve
>>>> On 2014-04-08 8:34 AM, ngalarneau at ABINITIO.COM wrote:
>>>>> Hi Richard,
>>>>> You raised this IntelliJ issue here:
>>>>> http://youtrack.jetbrains.com/issue/IDEA-101939
>>>>> It is marked as a feature request.
>>>>> Are you guys saying that the 2 ways of launching are not equivalent?
>>>>> What is the difference?
>>>>> Maybe that issue should be upgraded to a BUG if the old launching 
>>>>> method
>>>>> is now wrong, not merely old fashioned.
>>>>> Neil
>>>>> From:   Richard Bair <richard.bair at oracle.com>
>>>>> To:     Kevin Rushforth <kevin.rushforth at oracle.com>
>>>>> Cc:     openjfx-dev at openjdk.java.net, Sandipan Razzaque 
>>>>> <me at sandipan.net>
>>>>> Date:   04/07/2014 09:43 PM
>>>>> Subject:        Re: [RT-33954] static block...causes 
>>>>> IllegalStateException
>>>>> - re-open?
>>>>> Sent by:        "openjfx-dev" <openjfx-dev-bounces at openjdk.java.net>
>>>>> Yes, this is one of the few things that I just hate about IDEA.
>>>>> On Apr 7, 2014, at 6:00 PM, Kevin Rushforth 
>>>>> <kevin.rushforth at oracle.com>
>>>>> wrote:
>>>>>> I can't speak to other IntelliJ issues, but the root cause of this
>>>>> particular one is the same thing that Debbie ran into last week --
>>>>> IntelliJ doesn't launch programs using the standard Java launcher. 
>>>>> For
>>>>> whatever reason, it uses its own launcher. This might be worth 
>>>>> raising
>>>>> with JetBrains.
>>>>>> -- Kevin
>>>>>> Jonathan Giles wrote:
>>>>>>> Kevin,
>>>>>>> Yes, that is the program I used, and yes, I get the 'Toolkit not
>>>>> initialized' exception. I am running IntelliJ, so that is the 
>>>>> reason. I
>>>>> switched over to Eclipse and the code run as expected.
>>>>>>> I am slightly bothered by the occasional failures that seem to be
>>>>> IntelliJ-specific. I have a gut feeling that it doesn't always run 
>>>>> all
>>>>> tests (or that it runs them slightly differently to get different 
>>>>> results
>>>>> than when run on the command line). Does anyone know why this is?
>>>>>>> I'm actually most at home in Eclipse, so perhaps I should switch to
>>>>> that as my primary IDE for OpenJFX development.
>>>>>>> -- Jonathan
>>>>>>> On 8/04/2014 11:29 a.m., Kevin Rushforth wrote:
>>>>>>>> Just to make sure we are running the same program, the one I 
>>>>>>>> ran to
>>>>> verify that RT-33954 is fixed was the simple test program in the 
>>>>> comments
>>>>> of that bug. Here it is (with the imports omitted for brevity).
>>>>>>>> public class Example extends Application {
>>>>>>>>    public static void main(String[] args) {
>>>>>>>>        //this is called from a static block in
>>>>> javafx.scene.control.Control
>>>>>>>> PlatformImpl.setDefaultPlatformUserAgentStylesheet();
>>>>>>>>        Application.launch(args);
>>>>>>>>    }
>>>>>>>>    @Override
>>>>>>>>    public void start(final Stage primaryStage) throws Exception {
>>>>>>>>    }
>>>>>>>> }
>>>>>>>> The above program runs fine for me with no exception.
>>>>>>>> Jonathan: are you seeing something different? Or perhaps running a
>>>>> different example?
>>>>>>>> NOTE: if you run this from IntelliJ it will not work. I 
>>>>>>>> verified that
>>>>> with Debbie last week (on a different issue), which may be why you 
>>>>> are
>>>>> seeing a problem. Running it from command line, from NB, or from 
>>>>> Eclipse
>>>>> works.
>>>>>>>> -- Kevin
>>>>>>>> Jonathan Giles wrote:
>>>>>>>>> Firstly, I agree - this does seem to still be reproducible 
>>>>>>>>> despite
>>>>> Kevin's comment that it should have been resolved in JavaFX 8.0 
>>>>> due to
>>>>> RT-28754 <https://javafx-jira.kenai.com/browse/RT-28754>, so that is
>>>>> troubling. I'll leave Kevin to comment on that.
>>>>>>>>> Secondly, RT-33954 was closed as a duplicate of RT-28754 <
>>>>> https://javafx-jira.kenai.com/browse/RT-28754>, so it would be 
>>>>> better to
>>>>> leave RT-33954 closed and move discussion (including what you 
>>>>> recently
>>>>> posted) into RT-28754 
>>>>> <https://javafx-jira.kenai.com/browse/RT-28754>. The
>>>>> discussion can start in there and most probably a new bug will 
>>>>> need to be
>>>>> opened (as RT-28754 
>>>>> <https://javafx-jira.kenai.com/browse/RT-28754> did
>>>>> result in a code change that at one point appears to have fixed the
>>>>> problem, so we're possibly dealing with a regression).
>>>>>>>>> Thirdly, whether this is a suitable bug for someone learning the
>>>>> ropes is debatable. I'll leave Kevin to offer his thoughts, but 
>>>>> perhaps
>>>>> you can propose a patch that resolves this issue for you in your test
>>>>> scenarios. Also, a good starting point is to develop a simple test
>>>>> application that helps to demonstrate this issue (preferably the 
>>>>> test case
>>>>> is a single class with no dependencies), and which you can then 
>>>>> share in
>>>>> the jira issue via copy/paste into a comment.
>>>>>>>>> Fourthly, to be a contributor in the OpenJDK requires you to 
>>>>>>>>> follow a
>>>>> process to get the paperwork in order. It is wise to get that 
>>>>> started as
>>>>> soon as possible, as it can sometimes take a while. Here's a link 
>>>>> to the
>>>>> process: http://openjdk.java.net/contribute/ The main thing is the 
>>>>> OCA.
>>>>>>>>> Finally, welcome! :-)
>>>>>>>>> -- Jonathan
>>>>>>>>> On 6/04/2014 1:06 p.m., Sandipan Razzaque wrote:
>>>>>>>>>> Hi JavaFX devs!
>>>>>>>>>> I was wondering how people felt about re-opening this bug? I 
>>>>>>>>>> don't
>>>>> believe
>>>>>>>>>> it has been fixed (see my comment).
>>>>>>>>>> I'm also happy to work on it. But, let me know if you think 
>>>>>>>>>> my time
>>>>> would
>>>>>>>>>> be better spent elsewhere. I'm keen to take on a small bug to 
>>>>>>>>>> just
>>>>> get the
>>>>>>>>>> hang of the process and community (I'll be stumbling with 
>>>>>>>>>> mercurial
>>>>> along
>>>>>>>>>> the way too!). I think this bug is an ideal candidate for 
>>>>>>>>>> someone
>>>>> just
>>>>>>>>>> learning the ropes.
>>>>>>>>>> https://javafx-jira.kenai.com/browse/RT-33954
>>>>>>>>>> Cheers,
>>>>>>>>>> SR
>>>>>>>>>> Sandipan Razzaque | www.sandipan.net
>>>>>   NOTICE from Ab Initio: This email (including any attachments) 
>>>>> may contain
>>>>> information that is subject to confidentiality obligations or is 
>>>>> legally
>>>>> privileged, and sender does not waive confidentiality or 
>>>>> privilege. If
>>>>> received in error, please notify the sender, delete this email, 
>>>>> and make
>>>>> no further use, disclosure, or distribution.

More information about the openjfx-dev mailing list