03-05-2009 08:30 PM
There was a bug in Beta2 (184.108.40.206) where non-java resource files would be copied into the wrong package, but at least they would get packaged in and could be worked around.
In the gold release, it now completely ignores any non-java files in your classpath. This can be easily verified by adding any non-java file, such as a PNG file to your classpath and building the workspace. The resulting jar file for the project will not contain the file anywhere inside of it.
This is not documented in the Release Notes which makes me wonder if RIM even realizes that this is an issue. All that is mentioned in the release notes is that non-java resources get placed in the wrong package in your eclipse project when imported from a JDE project.
So, the impact of this, is that using this plugin, you cannot write a game (images or sounds), an app that has to load resource files to operate. Heck, you can't even place your logo in an 'about' screen. Am I to believe that RIM released this new plugin and didn't even test to see if their own sample applications worked? Not even TicTacToe runs.
I am using 220.127.116.11 build of the plugin and have tested it with component packs 18.104.22.168 and 22.214.171.124. These component packs are not the latest that are visible on the eclipse update site, but trying to update to them using Eclipse gives the error:
An error occurred while collecting items to be installed
No repository found containing: net.rim.eide.componentpack4.3.0/osgi.bundle/4.3.0.
The direct download packages on the main eJDE page are the same versions as those released with eJDE Beta2.
At this point, I seem to have no option other than to revert back to the 126.96.36.199 plugin (Beta2) and hope that this gets fixed.
Don't get me wrong, I think that the eJDE plugin is a vast improvement on either the old style JDE or the Frankenstein-style Eclipse/JDE integration that most Blackberry developers have used for years. Unfortunately though, this final 1.0 release is going to be almost utterly useless to many developers because of this issue.
03-11-2009 03:04 PM
The "No repository found containing..." errors with the BlackBerry Eclipse update site should now be resolved.
Have the resource files been added to the project itself? If so, they should be packaged into the cod file of an application. To add one right click on your project/package/etc, select Import, File and choose the file you wish to add to your project.
03-11-2009 04:16 PM
Thank you for your reply.
The issue with the resources not being included in the jar (and therefore cod) file was resolved when I updated to the 188.8.131.52 components package. Unfortunately, I had to do so by digging into the artifacts.xml file on the update site and downloading and installing the files manually. I did this several days ago when the update site was still borked.
By the way, you know the spot in the release notes where you say not to call Foo.class.getName() because you get verification errors? I've found that calling ANY method on Foo.class will SOMETIMES (not always) cause a verification error. On the other hand, calling:
Class theClass = Foo.Class;
works just fine.
The last major issue I'm dealing with is that some of my projects (they contain non-java resources, though I don't know if it makes any difference) occasionally insists on adding my .settings directory and its contained files plus my project's .csl file into the [Files ...] portion of the .jdp file which occasionally causes havoc and failed builds.
I've thought this could possibly have something to do with using the linked style of blackberry projects, but on investigating how to turn it off, I found that there is no option to switch to, or make a non-linked project, even though the net.rim.eide.keys.Project.prefs file contains a setting:
I see that the direct links to the component packs on the software downloads page now properly links to the versions of the component packs that are compatible with the .67 version of the plugin.
Anyway, thank you for eventually getting this working. If you'd like to directly contact me to help reproduce some of these other issues that I'm having, feel free.
03-17-2009 09:50 AM
Are you able to reproduce the addition of the .settings file? If so, can you post the steps? If not, after it happens again please send the .log and .log-eide files (located in the .metadata directory if your workspace) to firstname.lastname@example.org and describe what action(s) you had just performed. Thanks!
05-16-2009 11:05 AM
I've had similar issues with the eclipseJDE 184.108.40.206 and have been fighting its apparent need to keep recreating one and only one "src" folder of linked resources. Is there a way to turn this off? Is there different setting for this in the net.rim.eide.keys.Project.prefs file?
For the including png or other resources, I'm not sure how best to do it through eclipse, but I found I can get my desired results to include specific files by putting them in the *.jdp file for the project which the BB plugin for eclipse seems to use to keep redefining the linked "src".
After listing your desired media files in the *.jdp file, refresh the project in eclipse and it should link those via the one-and-only "src" folder that it keep creating.
The eclipseJDK BlackBerry plugin keeps wanting to reset the eclipse project but this seems backward in that I normally expect plugins to take from the eclipse configuration and not keep resetting it. It should use and extend the eclipse configuration, not overwrite it. I expect to be able to have multiple src folders and img and other media folders within the project, not as some linked resources at the file-system level, and be able to declare which ones are to be included in the final JAR/COD.
I roughly had the plugin 220.127.116.11 for eclipse 3.3 working as I would expect after much pain and experimentation, and now it's all gone to the dogs again.
While as a Waterloo grad I'm proud of the BlackBerry device itself, I'm afraid I can't say the same for the development environments. Mobile development is a fractured moving target, but it doesn't have to be this way and with competition from iPhone and Android the BlackBerry needs to have ease of development to compete. Sun' Java ME hasn't helped progress either, still being mired in the Java 1.1 dark ages while Android boasts Java 5 classes.
On the bright side I have seen better articles coming through the knowledge base, etc., and thanks in particular to you Mark Sohm for your support. A friend who working for RIM for a while noted the inside joke that it's the company that makes money despite itself -- I see some signs of improvement to that on the developer front, and hope to see it continue.