Run Server from source

In order to run the server products from the sources, you need to first install the basic steps for running Hawk from source. Once you have done that, to run the server product, you should open the relevant .product file. The editor will look like this one:

Server product editor

You should use one of the buttons highlighted in red (the triangle "Run" button or the bug-like "Debug" button) to run the product for the first time. It may fail, due to the slightly buggy way in which Eclipse produces the launch configuration from the product. If you see this:

!ENTRY org.eclipse.osgi 4 0 2017-04-15 13:51:14.444
!MESSAGE Application error
!STACK 1
java.lang.RuntimeException: No application id has been found.

That means you need to tweak the launch configuration a bit. Shutdown the server by entering shutdown and then close in the "Console" view, and then open the "Run" menu and select "Run Configurations...". Select the relevant "Eclipse Application" launch configuration and go to the "Plug-ins" section:

Plugins section in launch configuration

Click on "Add Required Plugins": you'll notice that it adds quite a few things. Click on "Run" now: it should work fine. Eventually, you should see this text:

Welcome to the Hawk Server!
List available commands with 'hserverHelp'.
Stop the server with 'shutdown' and then 'close'.

You are done! You can also use "Debug" to track bugs in the server itself.

Note: if you would like to make changes to the Thrift API, you will need to edit the api.emf Emfatic file in the service.api project, and then regenerate the api.thrift file by using Ecore2Thrift. After that, you will need to run the Thrift code generator through the generate.sh script in the root of the same project.