[kepler-dev] Who has some idea about the Kepler & OpenModeller
David Welker
david.v.welker at gmail.com
Fri Apr 17 01:20:10 PDT 2009
Hi Qiao Huijie,
A good place to start in figuring out the answer to this question is the
following tutorial:
https://kepler-project.org/developers/teams/build/developing-a-hello-world-actor-using-the-kepler-build-system-and-eclipse/
This tutorial will teach you is how to make your own module and
integrate it with existing code.
The basic idea is that to integrate your own code or another project
like OpenModeller to the Kepler project, you would need to make one or
more modules for your OpenModeller work and refer to those modules along
with the modules for the base system of Kepler in a new suite. It would
probably be slightly simpler to use one module for your project, unless
you have a particular reason to break your project into multiple modules.
A convenient command for this is often "ant make-module-suite
-Dname=<your.module.name>" which makes a hybrid module that is also a
suite. With this, you can make a place to put your source code as well a
default modules.txt file that will refer to your new module as above
*daks-base.
The issue of whether you want to modify this default modules.txt file is
an important one. *daks-base is a suite that refers to a snapshot of
Kepler from several weeks ago. You can expect it to be updated
occasionally, but working off it is not like working off the trunk,
where change in the code that you will be building off is likely to
change on a daily basis. Unless you have a definite preference in this
area, I would recommend that you stick with default and work off of
*daks-base. This means that your will not get daily bug fixes and that
your work may become a little bit unsynchronized with the trunk. But,
you will be working off something that is constant, which will add a
little bit more stability to your development process. Also, you can
expect *daks-base to be occasionally updated to refer to a different
snapshot of *kepler-trunk, so your code will not become too
unsynchronized with *kepler-trunk. (This also means that you may have to
do some work to make your own work compatible with changes in Kepler on
those occasions when *daks-base is updated to refer to the latest
snapshot, but at least this will not be a daily occurrence as it would
be if you chose to work of *kepler-trunk.) Of course, the downside to
working of *daks-base is that you will not have access to the newest bug
fixes. At some times, you might run into a bug that has already been
fixed in *kepler-trunk. Really, it all about trade-offs when deciding
whether to work off of *kepler-trunk or *daks-base and both are
reasonable decisions. If you are not sure, just go ahead and work off
*daks-base.
Anyway, to integrate OpenModeller with Kepler once you have made your
own hybrid module suite with the above command and decided to work off
either *daks-base or *kepler-trunk is not too difficult. You simply need
to put the source code for integration in the src directory of your
module and any jars that you need from OpenModeller in the lib
directory. Any native executables that you work with through JNI should
go into lib/exe (because the build system will handle permissions to
ensure that such binaries are executable if you store them there.)
To compile and run your own work along with Kepler at this point is a
simple matter. Just use:
ant change-to -Dsuite=<your.suite>
ant run
Anyway, I hope this explanation was useful to you. Please feel free to
ask further questions for clarification.
David
> Dear all
>
> I want to integrate OpenModeller to the Kepler Project.
>
> What I want to know is that anyone has done about it? Or who hase some idean
> about it and give me some advice about it.
>
> Thanks a lot.
>
> Best regards.
>
>
> Qiao Huijie
> Institute of Zoology, Chinese Academy of Sciences
> Datun Road, Chaoyang, Beijing, 100101, China
>
>
> _______________________________________________
> Kepler-dev mailing list
> Kepler-dev at kepler-project.org
> http://mercury.nceas.ucsb.edu/kepler/mailman/listinfo/kepler-dev
>
>
More information about the Kepler-dev
mailing list