1. Setup

System requirements
  • 64-bit operating system: Windows, Linux or macOS

  • Memory – 4 GB minimum, 8 GB recommended

  • Hard drive space – 5 GB minimum

Java SE Development Kit (JDK)
  • Install JDK 8 and check it by running the following command in the console:

    java -version

    The command should return the Java version, e.g. 1.8.0_202.

    CUBA 7.0 supports Java 8, 9, 10 and 11. If you don’t need to work with projects based on previous CUBA versions (including migration to CUBA 7.0), then we recommend using Java 11.

  • Set the path to the JDK root directory in the JAVA_HOME environment variable, e.g. C:\Java\jdk8u202-b08.

    • On Windows, you can do this at ComputerPropertiesAdvanced System SettingsAdvancedEnvironment variables. The value of the variable should be added to the System variables list.

    • On macOS, it is recommended to install JDK in the /Library/Java/JavaVirtualMachines folder, for example /Library/Java/JavaVirtualMachines/jdk8u202-b08, and set JAVA_HOME in ~/.bash_profile with the following command:

      export JAVA_HOME="$(/usr/libexec/java_home -v 1.8)"

  • If you connect to the internet via a proxy server, some Java system properties must be passed to the JVM running development tools and Gradle. These properties are explained here: http://docs.oracle.com/javase/8/docs/technotes/guides/net/proxies.html (see properties for HTTP and HTTPS protocols). It is recommended to set the properties system-wide in the JAVA_OPTS environment variable.

Development Tools

The following tools facilitate development with the CUBA framework:

  • CUBA Studio - an integrated development environment built on the IntelliJ platform and tailored specifically for CUBA projects. You can install it as a separate application for your operating system, or as a plugin to IntelliJ IDEA (Community or Ultimate). See more information in the CUBA Studio User Guide.

  • CUBA CLI - a command line tool that provides basic scaffolding of projects and their elements: entities, screens, services, etc. This tool allows you to use any Java IDE for development of CUBA applications. See more information on the CUBA CLI GitHub page.

If you are new to Java, we strongly recommend using CUBA Studio as it is the most advanced and intuitive tool.

Database

In the most basic scenario, the built-in HyperSQL (http://hsqldb.org) can be used as the database server. This is sufficient for exploring the platform capabilities and application prototyping. For building production applications, it is recommended to install and use one of the full-featured DBMS supported by the platform, like PostgreSQL for instance.

Web browser

The web interface of the platform-based applications supports all popular browsers, including Google Chrome, Mozilla Firefox, Safari, Opera 15+, Internet Explorer 11, Microsoft Edge.