Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Java Executable Wrapper Plugin for Eclipse

About

After we written a java application by Eclipse, we should type a command like "java myapp.class" or "javaw -jar myapp.jar" to run our application. Though we can write a .bat file on Windows or write a shell script on Linux to do the job, it feels not very convenience.

The aim of this Google Summer of Code 2007 project is to develop a plugin for Eclipse to wrap compiled Java applications and give out a excutable file. It is supposed to support both Windows and Unix-like Systems.

This plugin will take use of the Eclipse executable application which comes from the "platform-launcher" project in the Eclipse cvs.

This plugin will consist of two main parts.

  • An editor of ".launcher" files. The ".launcher" files contain the required information to generate a executable launcher.
  • A wizard that generates the executable launcher. The wizard can get configuration from users step by step or load it from some ".launcher" configuration files.

Deliverables

  • Java Executable Wrapper Plugin (include source codes)
  • The documentation of the project including user guides and manuals.

Schedule

  • 1. Initial planning and designing of the project- to be finished by 31st May
    • Within this period I should get in touch with the mentor and I will learn how to use Eclipse "platform Launcher". And also I will learn the Eclipse plugin development for the wizard and give out a design description.
    • Deliverable(s): Architectural design description
  • 2. Implementation of the design – to be finished by 15th of June
    • This period will be the main development period when development and debugging will be taken place. At the same time get ready for mid evaluation.
    • Deliverables(s):Prototypes and documentation for the mid evaluation.
  • 3 .Modifications and samples – to be finished by 25th of July
    • This period will be taken to add new features, modify the code for deliverable and to write raw user's manual.
    • Deliverable(s) : Samples, improved code and raw user's manual.
  • 4. Final code and documentation - to be finished by 15th of August
    • During this stage the code would be tested for the production quality codes. Documentation would also be completed for the final evaluation.
    • Deliverable(s) : Final plugin and Documentation

The schedule will likely need some modification. ^_^

Progress

1. Study the use of Eclipse executable application (the launcher). (done)

  • (1) format of ini file (done)
  • (2) parameters (done)

2. Study how to branding the executable application. (done)

  • (1) use of class BrandingIron (in package org.eclipse.pde.internal.build) (done)
    • 1. steps : new BrandingIron; setName; setOS; setRoot; setIcons; brand (done)
    • 2. parameter format for setIcons method: "icon_filename1, icon_filename2, ..." (done)
  • (2) branding of eclipse executable (done)
    • There is a trouble thing: the eclipse.exe for Windows has 7 icons of different height*width*depth. So it may be not convenient for users to find these 7 icons.

3. Study the development of eclipse wizard plugin and editor plugin. (done)

  • (1) Study wizard development (done)
  • (2) Study editor development (done)

4. Implementation of test the export wizard to create a launcher for java application.

  • (1)support for requied parameters : (done)
    • 1 executable jar file;
    • 2 user parameters;
    • 3 operating system
  • (2)support for optional parameters : (done)
    • 1 application name;
    • 2 splash bitmap / nosplash;
    • 3 window system
  • (3)support for unusual parameters : (done)
    • 1 OS architecture
    • 2 Java VM
    • 3 VM argument
  • (4)support for variant operating systems (done)
  • (5)load settings from .launcher file (done)
  • (6)save settings to .launcher file (done)

5. Implementation and test of the editor for .launcher file (done)

6. Final test of the plugin and documentation (done)

Back to the top