Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 365914

Summary: PDE wizard doesn't properly set the API Tools nature and builder when creating a new plug-in project
Product: [Eclipse Project] PDE Reporter: Curtis Windatt <curtis.windatt.public>
Component: UIAssignee: Curtis Windatt <curtis.windatt.public>
Status: VERIFIED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: bsd, curtis.windatt.public, john.camelon, Michael_Rennie, Olivier_Thomann, remy.suen
Version: 4.2Flags: curtis.windatt.public: review+
Target Milestone: 3.7.2   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on: 365661, 365758    
Bug Blocks:    

Description Curtis Windatt CLA 2011-12-07 10:39:16 EST
Cloned to backport to 3.7.2 where the isVisible() call is still used.

+++ This bug was initially created as a clone of Bug #365661 +++

Build Id: 4.2 I20111205-0805

Apologies if I'm missing something here, but I thought that, providing I had definitions for my various Executable Environments installed (Preferences > Plug-in Development > API Errors/Warnings), that those definitions were used to validate system library usage without needing a corresponding JRE to be installed.  But this does not seem to be the case.

In my situation, I had a plugin with BREE set to J2SE-1.5, but I only had a Java6 JDK.  I was was inadvertently using Java6's String#isEmpty() with no errors, despite that my "Invalid references to execution environments" was set to an error.

My expectation was based on Ankur Sharma's blog [1]

   Another major difference is that API Tooling does not need JRE/JDK.
   It checks the usage against the environment descriptions. The
   descriptions are just the environment API and thus occupy very
   less space. For example, the 1.5 JRE takes close to 50MB while the
   descriptions for the same takes less than 2 MB.

And the brief discussion on bugs 213027 and 253693 makes no mention of requiring a matching JRE to be installed.

Is this a regression?  Or a deliberate change?  I noticed the screenshots have changed since Ankur's blog entry which referenced "Invalid references to system libraries".

I bring this up as although I was able to find and install a J2SE 1.5 JRE to enable the check, it was somewhat difficult to find and install (Apple only supports Java6 JVMs now).  I don't think I could find a working 1.4 JVM, let alone a 1.3 JVM if that was required.  And JDT's Installed JREs dialog is rather unforgiving if the JRE directory layout doesn't meet its expectations.

[1] http://blog.ankursharma.org/2009/07/system-library-validation_17.html
Comment 1 Curtis Windatt CLA 2011-12-13 14:48:14 EST
+1 as component lead

Fixed in R3_7_maintenance

http://git.eclipse.org/c/pde/eclipse.pde.ui.git/commit/?h=R3_7_maintenance&id=4d12b44239ab0c9a2fb9d693aeec40f323a8ab63
Comment 2 Curtis Windatt CLA 2012-01-19 11:21:02 EST
Verified in M20120118-0800