EclipseME - PowerPoint PPT Presentation

1 / 23
About This Presentation
Title:

EclipseME

Description:

Java 2 Platform, Micro Edition (J2ME ) is the programming ... Borland jBuilder Mobile Edition. Other SDKs. What Makes Eclipse Unique? Incremental build support ... – PowerPoint PPT presentation

Number of Views:78
Avg rating:3.0/5.0
Slides: 24
Provided by: inter8
Category:

less

Transcript and Presenter's Notes

Title: EclipseME


1
EclipseME
  • Java Micro Edition
  • The Eclipse Way
  • Craig Setera
  • setera_at_users.sourceforge.netApril 19, 2006

2
Agenda
  • Who Am I?
  • About J2ME
  • J2ME pain
  • Other J2ME tools
  • Eclipse Features
  • EclipseME
  • Basics
  • Features
  • Development and development challenges
  • Demo
  • Futures

3
Who Am I?
  • 15 years software in industry
  • 15 years of Object Oriented programming
  • Smalltalk, Java
  • Open source guy
  • jMechanic, EclipseME, ZeeME
  • Cell Phone Geek

4
Why do I need something different for Mobile
Devices?
  • Java 2 Platform, Micro Edition (J2ME) is the
    programming model introduced to standardize
    programming for embedded devices
  • Specifications are designed as part of the Java
    Community Process (JCP)
  • J2ME is a family of specifications, designed as a
    series of layered APIs
  • Configuration
  • Profiles
  • Optional APIs

5
The Pain of Java ME
  • Small subset of J2SE libraries
  • Some additional micro edition libraries
  • Preverification
  • Classes must be pre-verified
  • The same process as split verification in J2SE
    Mustang

6
The Pain of Java ME
  • Device Fragmentation
  • Each device has its own constraints
  • Memory, processing speed, screen size
  • Memory is severely constrained
  • Use of obfuscation to control library size
  • Each device has its own set of quirks
  • Most development is emulated
  • Too many devices to develop for all
  • Emulators and devices often dont match behavior
    (or bugs)
  • Most real devices do not support debugging

7
The Pain of J2ME
  • Deployment
  • Runtime deployment
  • Execution code deployment
  • Some devices require new frameworks
  • Example IBM J9 environment
  • Connection environments
  • Network
  • Direct connects (USB, serial, bluetooth, etc)
  • Over the air (OTA)

8
What J2ME tools are out there already?
  • Eclipse Based Toolsets
  • IBM WebSphere Studio Device Developer
  • Nokia Developers Suite for J2ME
  • Other SDKs that extend these or existing
    functionality
  • Non-Eclipse Based Toolsets
  • NetBeans with Mobility Pack
  • Sun Java Wireless Toolkit
  • Borland jBuilder Mobile Edition
  • Other SDKs

9
What Makes Eclipse Unique?
  • Incremental build support
  • Eclipse provides a compiler that understands
    structural changes
  • Only compiles dependencies as necessary
  • Automatically compiles changed files
  • Plug-in ability
  • Provides ability to extend all aspects of the
    Eclipse platform
  • Provides ability to add new builders

10
What is EclipseME?
  • History
  • Needed Eclipse tools for programming my cell
    phone
  • Couldnt find anything at the time, thus
    EclipseME was born
  • Sourceforge project
  • Started in July 2003
  • 29 released versions
  • Nearly 200,000 downloads

11
What is EclipseME?Basic Functions
  • Glue between Eclipse and J2ME toolkits
  • Plug-ins into Eclipse providing extensions to the
    Java Development Tools (JDT)
  • A goal of seamless integration for Java ME
    development
  • Incremental preverification Eclipse builder
  • Emulator run and debug launch integration

12
What is EclipseME?Features
  • Multiple wireless toolkit support
  • Wireless toolkit preferences
  • Platform component and definition support
  • Create new J2ME Midlet Suite Project
  • Create new MIDlet
  • Java Application Descriptor (JAD) editor
  • Automatic incremental preverification
  • Eclipse launch support for Emulator
  • MIDlet debugging support
  • JAR and obfuscated JAR packaging
  • Over the air deployment testing server
  • Export Antenna build files
  • Automatic MIDlet signing

13
What is EclipseME?Extensible Platform
  • A minimal platform for extension
  • Extension points for adding new wireless toolkit
    definitions
  • Extension points for defining device editors
  • EclipseME is more tool than platform

14
EclipseMEProfessional Open Source
  • Good free support
  • Mailing lists
  • Bug tracker
  • Enhancement request tracker
  • Polished functionality
  • Polished and accurate help
  • Polished and accurate web site

15
EclipseME Development
  • Open-source
  • Eclipse Public License
  • Philosophies
  • Release early, release often
  • Open source can be professional and polished
  • Sourceforge hosted
  • http//eclipseme.org is hosted elsewhere for
    added flexibility
  • 2 person team with benevolent dictator

16
EclipseME Challenges
  • Keeping up with the Jones'
  • Eclipse tools are a moving target
  • Wireless Toolkit vendors are a moving target
  • Team Management
  • Balance is tough
  • It is tough to give the good work away
  • It is tough to give up creative control
  • It is tough to do everything with one person
  • The real world gets in the way
  • Managing to find time for EclipseME can be
    difficult sometimes

17
Why Open Source?
  • Benefit from other projects
  • Ive personally benefitted from other open source
  • My employers have benefitted
  • It is interesting and scratches an itch
  • If done well, it is good publicity
  • Good for networking
  • Good for job offers

18
Demo
  • Manage devices
  • Create Midlet suite
  • Create midlet
  • Application Descriptor Editor
  • Debug midlet
  • Packaging support

19
Future of EclipseME
  • New Features
  • Addressing Device Fragmentation
  • Preprocessing support
  • Batch build for multiple device definitions
  • Lots of new device support
  • Palm, Blackberry, etc.
  • Ongoing support for new versions of previous
    devices
  • New tools
  • J2MEUnit, J2ME Polish
  • Web Service stub generation
  • Bugs, bugs and bugs

20
Future of EclipseME
  • Eclipse Mobile Tools for Java Project
  • An official Eclipse Foundation project
  • Formed by Nokia and IBM
  • EclipseME is involved in MTJ
  • I am on the Project Management Committee
  • I am providing architecture, design and
    implementation direction
  • MTJ is using EclipseME code
  • EclipseME will eventually be replaced by MTJ
  • EclipseME users will be migrated to MTJ
  • EclipseME may still be a layer on top of MTJ

21
References
  • Eclipse
  • http//www.eclipse.org
  • EclipseME
  • http//eclipseme.org
  • http//sourceforge.net/projects/eclipseme/
  • EclipseMEAnother IDE Option for J2ME Development
  • Jim White
  • http//www.devx.com/wireless/Article/29233
  • Eclipse Mobile Tools for Java
  • http//www.eclipse.org/dsdp/mtj/

22
Thank You!
  • Thanks to Jim White
  • For a great EclipseME article
  • For putting me in contact with Jeff Jensen
  • Thanks to Jeff Jensen for inviting me
  • Thanks to TCJUG for having me

23
QA
  • Ask away
Write a Comment
User Comments (0)
About PowerShow.com