-
Notifications
You must be signed in to change notification settings - Fork 132
Can't adjust project (Arduino) properties (jss and folder permissions) #252
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
The project won't build. There is something very wrong yet I can't remember doing anything to break it! |
I have seen the "The currently displayed page contains invalid values." error a couple of times. I have made some bug fixes lately that improved the situation. Seems there is still an issue somewhere. |
Ah! Security update for .NET (KB3037581) applied today. I wonder if that has caused problems. I am still able to compile C++ programs using cygwin or mingw compiler. And a load of Windows security updates. |
I did try to create a new project but that isn't working either!
|
something seems seriously wrong on your system. |
I am brave but am working on a company laptop without admin rights so have limited functionality, e.g. I can not run application installers. (I am using Eclipse Portable.) |
There is no need to install anything. It would be easier if you could install git but it is not needed. |
Hmm! I might have fixed it (though not sure how)! I downloaded the Product and created a new workspace. This allowed me to create a new project which I imported the files from the old project. I mad a couple of code tweaks* and saved this project. I was then able to open the same project from my original copy of Eclipse with your plugin and things were working. I can't explain why so much was not working before, even when I removed the project or created a new workspace. It would be useful to figure out what went wrong. I will play a bit more to see whether I can reproduce the problem and debug it. If I haven't managed within a couple of days, I will close this issue as resolved. |
txs for the feedback |
I haven't had time to investigate further. It seems okay now so I will close this issue and if there is recurrence, open another. Cheers! |
This has recurred. I don't understand your instructions on debugging. I downloaded master.zip and opened it as a workspace. How do I now debug what is happening with eclipse / plugin when I try to use the plugin, e.g. create a new project? |
Okay, I have a debug version of the application working. Clicking on "New Sketch" toolbar yields following debug output: !ENTRY org.eclipse.ui 4 0 2015-05-13 20:37:21.184 |
It looks like jssc has a problem on your system. |
Same result with or without USB devices plugged. I can't find jssc installation. Any idea where to look? |
Sorry for the confusion but this is out of my comfort zone. I'm a bit confused for another reason. |
To debug, I started Eclipse, imported the plugin workspace to a new workspace (because the downloaded workspace did not show any files), debug run the application which creates a new workspace, close debug application, copied my DUT workspace to the newly created workspace, debug run the application again, clicked on "New Sketch" toolbar, copied output from console window. I have now figured out what the issue is. jssc.SerialNativeInterface.getSerialPortNames() extracts dll files to the directory [user.home]/.jssc/windows. On my laptop [user.home] is a network share that is mirrored locally. The .jssc folder was read-only hence jssc was failing. I'm not sure why this is the case and I am experimenting with the online / offline / sync features - it seems this file changes to read-onl when I disconnect from my company network. A work-around may be to set the Java user.home variable for Eclipse. I am struggling to figure out how to do that. It should be possible to set this in the configuration file but my attempts have failed. |
I have implemented a work-around by adding -Duser.home=D:\bin\EclipsePortable\Data\user.home to the eclipse.ini file. |
Txs very much for the debugging and finding the root cause. :-) Just thinking. If the folder write rights is the root cause .... and the plugin and arduino ide use the same jss (of which I am pretty sure)... and arduino ide does not set the user.home variable (which I assume) ... the problem should be reproducible in the arduino IDE as well. |
Thinking again. In the Arduino IDE it probably shows as an empty port list only. |
Arduino IDE does not appear to extract DLLs to same folder. (I can't figure out where it does.) |
you're assuming I'm using windows ;-) I'm not :-) |
I seem to be unable to reproduce in linux |
Excellent that you not using Windows :-). I prefer not to but am constrained at times. It is easier to test on *nix by changing the permission of ~/.jssc/llinux (on a linux machine - not sure what on OS X). My Windows laptop is at the clinic being fixed so I am using my Ubuntu laptop. I can reproduce by making the directory not accessible to the user but there was no nightly build this morning so your fix isn't available via normal update mechanism. I will test on both machines (Ubuntu & Windows 7) as soon as I can. Cheers! |
I fixed this 2 days ago so the change is in the 2015_05_15 version. |
Sorry - that didn't work :-(. I grabbed the latest version of the plugin from github and it still bombs out at the same point. (Testing on Ubuntu.) Maybe the try / catch wrapper does not catch exceptions thrown within the jssc.jar which should be handled by jssc. Maybe jssc may not catch errors when it calls jssc.SerialNativeInterface.openPort. I am just having a look at the jssc code to see whether this needs fixing there. |
jssc checks whether the user.home folder has write permission and if so, uses it else uses the temp folder however this does not cover (the corner case) [home]/.jssc exists but is read-only. jssc attempts to extract the native serial libs with error checking so does not throw an error when it is initiated and tries to extract this native lib. Subsequent use of the library assumes this lib exists. Is there a way to check whether jssc initiates correctly and avoid using it if it does not? |
I have reviewed jssc source and see that there is no indication available as to whether native library has been loaded therefore there seems no simple fix / workaround within this plugin. I have reported this issue to jssc project thus: https://github.com/scream3r/java-simple-serial-connector/issues/72. I suggest removing the fix in commit 82e200d. |
WAIT!!! Change Serial.java:73 from |
The code is currently made with the idea that errors are shown in a dialogbox to the end users. |
I will test on Windows and Linux and close issue if now resolved in nightly / git. Cheers! |
Tested on Ubuntu okay. Can't test on Windows - my laptop is broken. I am satisfied this is likely to fix the problem so closing the issue. Thanks for your work on this. |
I have a project that I have been working on for a few days. Today I selected Project->Properties->Arduino and was presented with an error, "Could Not Accept Changes", "The currently displayed page contains invalid values." The only thing I can remember changing is the USB serial interface. I have tried setting com port value in the .prefs file with no luck. (I think that may be a red herring.) I have updated to the latest nightly (2.4.0.201505050212) but no luck. I have restarted Eclipse (a few times). Any ideas how to rescue my project?
The text was updated successfully, but these errors were encountered: