A while back we announced the migration to the new build cloud. The migration worked very smoothly and mostly seamlessly but there was one caveat: client libraries must be up to date. This is a confusing point so hopefully this long overdue post will clarify it.
The core of the problem is
CodeNameOneBuildClient.jar. It’s a relatively simple jar with a few ant tasks that performs a lot of "under the hood" services such as sending the build to the cloud. It’s shipped within the IDE plugin and old versions of the IDE plugins would replace it automatically. We now update it via the update framework which is better but might cause a few issues.
Generally the issues can be expressed either via a build that doesn’t appear. You might get an error that a build is already in the queue and once we remove app engine entirely you’ll get a connection error.
To fix this you need to do the following:
Update your plugin to the latest version, make sure that other team members don’t use an old plugin either
Run Update Project Libs which you can do by right clicking the project and selecting: Codename One → Codename One Settings → Basic → Update Project Libs
| || You need to Update Project Libs for every project if you have more than one |
Notice that new projects should be fine.
If this Didn’t Work
The problem is that these two steps might fail. Here are things you need to look at:
Make sure the
Versions.properties and the jars in the projects aren’t under source control. They should be excluded from it as we update them dynamically
In your home directory there is a directory named
.codenameone make sure it doesn’t contain an
UpdateStatus.lock file. If it does you can delete it assuming it’s been there for a while
When in doubt you can delete
Versions.properties and Update Project Libs again. This should work but if that doesn’t do it you can go with the "nuclear option" and delete the
.codenameone directory and
Versions.properties. After that do an Update Project Libs.
If this still doesn’t work let us know via the chat. Ideally try to run the update framework from command line to figure out what went wrong.