Closed skorsky closed 9 years ago
Step 4 of 2.Kevoree_Basics ? You mean 4.Its_About_Sending_A_Message ?
Yes.
Can you send me your project, because I've just tested the 4. on Linux and Windows and it works.
Trying to reproduce this and isolate it, I found that if
clearInterval(this.id);
in the stop function causes this if this line is missing.
Which command-line application do you use ?
Because it looks like there is none that are trustworthy on Windows :-1:
Following the tutorial readme, I used grunt kevoree
.
Not the command you ran, the command-line tool/application you are using.
Windows default one ? PowerShell ? Cygwin ?
Windows default one cmd
.
Can you try with PowerShell if you have it ?
Works with PowerShell!
Tsss, I hate this Operating System.
How am I supposed to find out why it does not work with the default command-line application ?
@brice-morin any idea (besides "Windows sucks" because everyone know that) ?
Well, I do not know. I guess we should at least strongly recommend using PowerShell in the README. Because fixing that issues for any shell on Windows seems like dark magic...
Why not point out, that clearInterval(this.id);
is necessary in the stop function? If this is called during stop, all is fine.
clearInterval(this.id)
is already in the stop function call
Yes, in the committed source.
But when I come from exercise 1 (2.Kevoree_Basics/1.HelloWorld/js/), then this line is not in the source of stop.
The hang happens because you have to clear the interval you start in your components start functions. If you do not do so, the Kevoree runtime will not be able to properly ends its process while issuing a Ctrl-c
because it still has some functions that has to run on each delayed interval.
That's why each components has there own lifecycle methods, so that you can clean things like this when the stop is called.
I will add something in the README to specify that
Running step 4 of 2.Kevoree_Basics (JS), I get
Fatal error: Cannot call method 'findByPath' of null
when stopping the Kevoree runtime with Ctrl-C.