Building
To build Charba, you can check out the project and to run Ant build.xml.
The Ant build.xml is able to build the 2 artifacts, related to the 2 distributions available.
The first distribution is a Charba file without any GWT dependency (but working on GWT anyway), consumable also in other J2CL - JavaToClosure frameworks, like Google Elemental2 and Elemento.
To build the project, execute buildBinary
target.
It creates a charba-[version.release].jar
file in dist
folder, ready to be included in your project.
The second distribution is a Charba file with a hard GWT dependency which contains charts widgets and code splitting capabilities.
To build the project, execute buildBinaryGwt
target.
It creates a charba-[version.release]-gwt.jar
file in dist
folder, ready to be included in your project.
Installation
Currently Charba is available on MVN repository.
It is available also on GitHub releases.
If you are using Apache Maven:
<dependency>
<groupId>org.pepstock</groupId>
<artifactId>charba</artifactId>
<version>5.5</version>
<!-- for GWT -->
<version>5.5-gwt</version>
</dependency>
If you are using Apache Ivy:
<dependency org="org.pepstock" name="charba" rev="5.5"/>
<!-- for GWT -->
<dependency org="org.pepstock" name="charba" rev="5.5-gwt"/>
To install in your GWT project, both for GWT and for J2CL artifacts, you must the following configuration in your GWT project module configuration:
...
<inherits name="org.pepstock.charba.Charba"/>
...
Charba is now leveraging on JSINTEROP.
As the name suggests, JsInterop is a way of interoperating Java with JavaScript. It offers a better way of communication between the two using annotations instead of having to write javascript in your classes (using JSNI).