App store

HFactory Server looks for apps in its app store, which basically is just a directory containing apps, each in a separate sub-directory whose name matches the name of the app.

However, the expected structure of an app’s sub-directory differs depending on whether the server runs in development mode or not:

  • In production mode (the default), the server looks for packaged apps, i.e. apps made up of .jar files within the app’s base path.
  • In development mode, the server looks for unpackaged apps, i.e. for .class files in a sub-directory of the app’s base path of the form /target/scala-X.YZ/classes, where X.YZ is the version of Scala used to write the app (2.10 for instance).

The dev mode is obviously intended to be used only when developping an app, as in that case the app’s code is compiled to .class files in a target directory of the form described above.

Note

It is not possible to mix packaged and unpackaged apps in an app store. Or, more exactly, an instance of HFactory Server will ignore apps in its store whose structure (packaged vs unpackaged) do not match its run mode (prod vs dev, respectively).