Look at our introductory articles about OpenHub framework on Java Code Geeks.
What is part of OpenHub framework?
Following diagram describes main technologies you came across when you start to develop with OpenHub framework. See Architecture section for more information.
What a developer needs to know?
Before you start playing with OpenHub framework look at libraries and tools which are part of our application stack:
What a developer needs to install?
These are necessary:
- Java JDK 8, 9, 10, 11
- Apache Maven 3
- JAVA IDE
- all other needed libraries are fetched by Maven
These are optional:
OpenHub framework is prepared to use AOP functionality. It's necessary to explicitly set up compilation by AspectJ in IDE.
We use compile-time weaving therefore it's necessary to set compilation by ajc.
Compile-time weaving is the simplest approach. When you have the source code for an application, ajc will compile from source and produce woven class files as output. The invocation of the weaver is integral to the ajc compilation process. The aspects themselves may be in source or binary form. If the aspects are required for the affected classes to compile, then you must weave at compile-time. Aspects are required, e.g., when they add members to a class and other classes being compiled reference the added members.
Aspect settings for AspectJ
Each module has dependency on Spring aspects which should be used during compilation (=compile-time weaving). Settings correspond to Maven configuration.
Debugging a code completion
Add the following plugins for full AOP support in IDE:
- AspectJ Support
- Spring AOP/@AspectJ