Skip to content
This repository has been archived by the owner on Feb 19, 2019. It is now read-only.
Vishwas Babu A J edited this page Jul 16, 2015 · 77 revisions

mifosx

This page lists out the instructions for getting started on mifosx for Developers.

[Optional] Reproducible development Environment

The following steps walk you through the process of setting up MifosX directly on your local box.

You can also choose to use our Vagrant VM instead, instructions at : MifosX Vagrant VM

[Optional] Quickstart Guide

To get up and running fast, see Quickstart Guide.

However, it is recommended to follow the step-by-step comprehensive guide documented below before contributing back to Mifos X.

Github & Git

see Github-&-Git

Gradle Setup

see Gradle setup

Database setup

If you do not see yourself doing database intensive stuff, you can use an embedded database instead by skipping this step and going to the IDE setup step.

see MySQL database setup

Eclipse Setup

see Eclipse setup

IntelliJ IDEA Setup

see IntelliJ Idea Setup

Launching platform server locally from the command line

see Launching platform server locally from the command line

Setting up Community UI Application Locally

see Setting up Community UI Application Locally

Contribution Checklist

see Contribution Guidelines

Running Integration Tests

see Running Integration Tests

Troubleshooting Help

Gradle Build Error

Is your first gradle task such as "cleanEclipse eclipse" or "war" or "tomcatRunWar" failing due to a slow/erratic net connection?

Trust your net connection to work fine this time?

Try gradlew taskname --refresh-dependencies OR delete your hidden gradle cache in your home to force redownload of the dependencies by deleting ~/.gradle/caches(Linux) or C:/Users/yourusername/.gradle/caches (Windows).

Don't trust your net connection?

Avoid downloading of 3rd party gradle jars from internet.

BindException Errors

If you get the java.net.BindException: Address already in use :8080 exception whilst running the gradle command inside the mifosng-provider directory, you may need to kill the process which is already using 8080 (netstat -aon | grep 8080).

Compilation issues in Eclipse after pulling latest code

Addition of new dependencies in build.gradle after eclipsifying the project (https://github.com/openMF/mifosx/wiki/Eclipse) might cause compilation issues in Eclipse (since the .classpath file created by the gradle eclipse plugin is not updated with the details of the new dependencies)

Re-running "gradle cleanEclipse eclipse" in the mifosng-provider directory and then refreshing the project in eclipse (right-click on the project -> Refresh) would fix the same.

You would also have to re-apply all project specific formatting preferences

###OutOfMemory Errors If you see a java.lang.OutOfMemoryError: PermGen space or java.lang.OutOfMemoryError: Java heap space memory error while using gradlew clean tomcatRunWar for the first time. Try increasing your JVM settings in gradle. The -Xmx and -XX:MaxPermSize parameters affect overall memory allocation to the tomcat server.

Inside the $GRADLE_HOME/gradle or %%GRADLE_HOME%%/gradle.bat scripts adjust the DEFAULT_JVM_OPTS="" parameter with the following: DEFAULT_JVM_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8005,server=y,suspend=n -Xmx1024m -XX:MaxPermSize=512m"