Skip to content

DevGuide

evernat edited this page Feb 12, 2024 · 68 revisions

Compilation and development of JavaMelody

Browsing the sources and javadoc

You can browse the development sources from GitHub or you can download the source code zip file of a release which includes the sources of that release.

You can also browse the javadoc.

Building from sources

The "Source code" zip file available in "Releases" contains the java sources with a javamelody-core/pom.xml file for maven. If you want to rebuild the development version and not a particular release, clone from https://github.com/javamelody/javamelody/

After decompressing the zip file or after the checkout, in the javamelody-core directory, you can use the "mvn clean install -DskipTests" command using maven to rebuild the javamelody-core.jar and javamelody-collector-server.war files which are those available in "Releases". You must define the environment variable JAVA_HOME with the path of a JDK 1.8 to compile the sources.

Development

The development is done with Eclipse in its latest version and with the jdk 1.8 for compilation.

The manager of sources is GitHub at https://github.com/javamelody/javamelody/

The charset of files is UTF-8. The style guide is the google's style guide except for tab indentation. The Eclipse configuration is supplied in sources with the configuration of code formater, clean-up, warnings and of checkstyle, pmd, findbugs plugins. The infinitest eclipse plugin is also recommended.

The official languages of the project are french for javadoc but english for technical terms. (This provides a clean separation between functional and technical vocabulary, given that you speak French obviously).

The diagrams in the OpenOffice map or the other one may help to understand.

Tests

The JUnit tests can be launched with the "test" target of the ant script, or with maven.

The manual tests are written in the OpenOffice Test plan.

Plugins

Other plugins

Release process

This is an internal reminder of the steps of the release process.