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

SMILA/Development Guidelines

< SMILA
Revision as of 09:12, 19 August 2008 by Unnamed Poltroon (Talk)

Development requirements

Checkstyle

Each Eclipse project (Bundles) should follow the Brox Coding Conventions (see for Installation and Usage BROX Build & Checkstyle-Files & Configuration of Eclipse)

Eclipse Formatter

see BROX Build & Checkstyle-Files & Configuration of Eclipse.

Official JVM

Official JVM for this project is Java5.

OSGi

the OSGi impl. of Equinox of eclipse 3.3 or later and the corresponding OSGi Spec(s)

Version number

until further notice all own created bundles are V0.5

Project Setup

The project folder setup is defined for this project at Brox Java Project Setup

Creation of Bundles

Description at Create a bundle (plug-in)

How to integrate new bundle into build process see: How to integrate new bundle into build process How to integrate test bundle into build process see: How to integrate test bundle into build process

Introduction to make.xml

see: Introduction to make.xml

How to build EILF local and run all Junit-Tests

see: How to build EILF local

Junit-Test-Report is generated at the end of the build-output. Furthermore the full junit-reports are generate under eclipse.build/reports/junit/ and error messages from the junit-reports are stored under eclipse.build/reports_errors_txt/.

Continuous Integration

Everyone should be aware of the following workflow with bamboo.

Bamboo should improve the source code quality but it should not be used as a (junit)-test-server. Therefore each developer should check his code before committing it to subversion regarding:

  • Compilation Errors
  • Checkstyle (see Brox Coding Conventions)
  • Tests: Run a local build with the build.xml to test all existing junit-tests.
    (see [[1]] & [[2]] *:for the setup)
    Be aware that running tests in eclipse doesn't mean that they run with the pdebbuild.
  • Build-Process: Check if your Bundles and your Test-Bundle is fully integrated in the whole Build-Process
    (see [[3]] and [[4]])

We have added a feature to the build.xml: The failed junit-tests are reported at the end of the build output.

Furthermore the full junit-reports are generate under eclipse.build/reports/junit/ and the error messages from the junit-reports are stored under eclipse.build/reports_errors_txt/.

Everyone should monitor the trunk at the build-server and if there is a "red"-build everyone should look if he has committed the error.

If the error could not be solved within the next build the developer should inform the developer-team that there is a problem with the build and that he is working on the solution.

File Header & Copyright Notice

see [[5]]

Launch configurations for OSGi wih SCA

dstucky: I had some trouble selecting the right Bundles that were required to execute my sample application (org.eclipse.eilf.framework.test). Don't use the "Add required Bundles" button in the launch configuration dialog. It adds additional bundles that are not needed and starts all bundles with the same start level. I selected the required bundles manually (through try and error) and assigned the following start levels:

  1. all org.eclipse bundles (except for the eilf bundles)
  2. all org.apache.tuscany bundles
  3. all other third party bundles
  4. (default) all org.eclipse.eilf bundles
  5. the bundle with the test application (org.eclipse.eilf.framework.test)

I don't know if all these start levels are required, at least I got it working with these settings. Setting all to default does NOT work !!!

How to run/manage connectivity framework

From this moment there is an ability to start EILF/SMILA as separate application:

  1. Update from SVN and refresh
  2. execute build and unzip eclipse.build/Application/ EILF-win32.win32.x86.zip to any folder
  3. Create folder "c:\data" and place some txt/htm files (for filesystem crawler)
  4. launch application by eclipse.exe -console or launch.cmd
  5. Run jconsole, and connect to local
  6. Open EILF/org.eclipse.econnectivity... branch in the jconsole
  7. Open MBeans/Operations tab
  8. Start FileSystem crawler by "startCrawl()" operation with passing "file" parameter
  9. Start Web crawler by "startCrawl()" operation with passing "web" parameter.
  10. Look at the Eclipse console log and enjoy ;)




















OSGi related information

Back to the top