Learning Apache Apex
上QQ阅读APP看书,第一时间看更新

Setting up the development environment

Development of Apex applications requires a Java development environment with the following:

  • Java Development Kit (JDK): Apex applications are mostly written in Java, and Apex itself is implemented in Java. Other Java Virtual Machine (JVM) languages such as Scala can also be used, but this is outside the scope of this book.
  • Maven: Apex comes with a Maven Archetype to bootstrap new projects and the Apex project itself also uses Maven as build tool.

In addition to the above, it is recommended to have an IDE with Maven support such as IntelliJ or Eclipse. Apex provides code style settings for these IDEs that can optionally be used.

It is further recommended to have Git installed. Git is not required to build an application, but it is a convenient way to fetch the Apex source code and is especially useful for easily navigating the full operator library (apex-malhar) project within the IDE when working on operator customizations.

For the latest details on setting up a development environment, please refer to http://apex.apache.org/docs/apex/apex_development_setup/.

Application development can be done on any host operating system that can provide the above, including macOS, Windows, and Linux. Much of the development and functional testing can be done on the local machine within the IDE. Apex applications can run in embedded mode for this purpose, which eliminates the need to have a Hadoop cluster, which typically runs on Linux. Options for running Hadoop will be covered later as well.