4. Introduction

devonfw provides a solution to building applications which combine best-in-class frameworks and libraries as well as industry proven practices and code conventions. It massively speeds up development, reduces risks and helps you to deliver better results.

This document contains the instructions for the tool devonfw-ide to setup and maintain your development tools including your favorite IDE (integrated development environment).

4.1. Features

Every developer needs great tools to work efficient. Setting all this up manually can be tedious and error-prone. Further, different projects may require different versions and configurations of such tools. Especially configurations like code-formatters should be consistent within a project to avoid diff-wars.

The devonfw-ide will solve all these problems. Here are the features we can offer for you with devonfw-ide:

  • Efficient
    Setup your IDE within minutes tailored for the requirements of your project.

  • Automated
    Automate the setup and update, avoid manual steps and mistakes.

  • Simple
    KISS (Keep It Small and Simple), no installers or tool-integrations that break with every release. Instead use archive-files (zip or tar.gz), templates and simple shell scripts.

  • Configurable
    You can tweak the configuration to your needs. Further the settings contain configuration templates for the different tools (see configurator).

  • Maintainable
    For your project you should copy these settings to an own git repository that can be maintained and updated to manage the tool configurations during the project lifecycle. If you use github or gitlab every developer can easily suggest changes and improvements to these settings via pull/merge requests without ending in chaos with big teams.

  • Customizable
    You need an additional tool that we never heard of? Put it in the software folder of the structure. The devon CLI will then automatically add it to your PATH variable.
    Further you can create your own commandlet for your additional tool. For closed-source tools you can create your own archive and distribute to your team members as long as you care about the terms and licenses of these tools.

  • Multi-platform
    Works on all major platforms, which are Windows, Mac, and Linux.

  • Multi-tenancy
    Have as many instances of the devonfw-ide "installed" on your machine for different projects with different tools, tool versions and configurations. No physical installation and no tweaking of your operating system. "Installations" of devonfw-ide do not interfere with each other nor with other installed software.

  • Multiple Workspaces
    Support working with different workspaces on different branches. Create and update new workspaces with few clicks. See the workspace name in the title-bar of your IDE so you do not get confused and work on the right branch.

  • Free
    The devonfw-ide is free just like everything from devonfw. See LICENSE for details.

4.1.1. IDEs

We support the following IDEs:

4.1.2. Platforms

We support the following platforms:

4.1.3. Build-Systems

We support the following build-systems:

However, also other IDEs, platforms, or tools can be easily integrated as commandlet.

4.1.4. Motivation

TL;DR? Lets talk to developers in the proper language. Here are examples with devonfw-ide:

[/]$ devon
You are not inside a devonfw-ide installation: /
[/]$ cd /projects/devonfw
[devonfw]$ mvn
zsh: command not found: mvn
[devonfw]$ devon
devonfw-ide environment variables have been set for /projects/devonfw in workspace main
[devonfw]$ mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: /projects/devonfw/software/maven
Java version: 1.8.0_191, vendor: Oracle Corporation, runtime: /projects/devonfw/software/java
Default locale: en_DE, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.3", arch: "x86_64", family: "mac"
[devonfw]$ cd /projects/ide-test/workspaces/test/my-project
[my-project]$ devon
devonfw-ide environment variables have been set for /projects/ide-test in workspace main
[my-project]$ mvn -v
Apache Maven 3.6.0 (97c98ec64a1fdfee7767ce5ffb20918da4f719f3; 2018-10-24T20:41:47+02:00)
Maven home: /projects/ide-test/software/maven
Java version: 11.0.2, vendor: Oracle Corporation, runtime: /projects/ide-test/software/jdk/Contents/Home
Default locale: en_DE, platform encoding: UTF-8
OS name: "mac os x", version: "10.14.3", arch: "x86_64", family: "mac"
[ide-test]$ devon eclipse
launching Eclipse for workspace test...
[my-project]$ devon build
[INFO] Scanning for projects...
...
[INFO] BUILD SUCCESS

This was just a very simple demo of what devonfw-ide can do. For further details have a look at our CLI documentation.

Now you might ask:

  • But I use Windows/Linux/MacOS/…​? - works on all platforms!

  • But how about Windows CMD or Power-Shell? - works!

  • But what if I use cygwin or git-bash on windows? - works!

  • But I love to use ConEmu or Commander? - works with full integration!

  • How about MacOS Terminal or iTerm2? - works with full integration!

  • But I use zsh? - works!

  • …​? - works!

Wow! So lets get started with download & setup.

4.2. Setup

4.2.1. Prerequisites

We try to make it as simple as possible for you. However, there are some minimal prerequisites:

  • You need to have a tool to extract *.tar.gz files (tar and gzip). On Windows lower Windows 10 (1803) use 7-zip. On all other platforms this comes out of the box.

  • You need to have git and curl installed.

    • On Windows all you need is download and install git for windows. This also ships with bash and curl.

    • On Linux you might need to install the above tools in case they are not present (e.g. sudo apt-get install git curl or sudo yum install git-core curl)

    • On MacOS all you need is download and install git for mac.

4.2.2. Download

Releases of devonfw-ide are published to maven central. The latest release can be downloaded from here.

4.2.3. Install

Create a central folder like C:\projects or /projects. Inside this folder create a sub-folder for your new project such as my-project and extract the contents of the downloaded archive (devonfw-ide-scripts-*.tar.gz) into this new folder. Run the command setup in this folder (on windows just double click setup.bat). That’s all. To get started read the usage.

4.2.4. Uninstall

To "uninstall" your devonfw-ide you only need to call the following command:

devon ide uninstall

Then you can delete the devonfw-ide top-level folder(s) (${DEVON_IDE_HOME}).

The devonfw-ide is designed to be not invasive to your operating system and computer. Therefore it is not "installed" into your system in a classical way. Instead you just create a folder and extract the downloaded archive to it. Only specific prerequisites like git have to be installed regularly by you in advance. All other software resists just locally inside the folder of your devonfw-ide. However, there are the following excuses (what is reverted by devon ide uninstall):

  • The devon command is copied to your home directory (~/.devon/devon)

  • The devon alias is added to your shell config (~/.bashrc and ~/.zshrc, search for alias devon="source ~/.devon/devon").

  • On Windows the devon.bat command is copied to your home directory (%USERPROFILE%\scripts\devon.bat)

  • On Windows this %USERPROFILE%\scripts directory is added to the PATH of your user.

  • The devonfw-ide will download third party software to your ~/Downloads folder to reduce redundant storage.

Last updated 2020-03-28 00:06:08 UTC