>>>>> Steinar Bang <[email protected]>:
>>>>> Jean-Baptiste Onofré <[email protected]>:

>> Hi Steinar,
>> you can take a look on the documentation:

>> http://karaf.apache.org/manual/latest/#_console_3

> Thanks!

> The HelloShellCommand sample seems easy to follow.

> I've now also read the javadoc here:
>  
> https://github.com/apache/karaf/blob/master/shell/core/src/main/java/org/apache/karaf/shell/api/action/Action.java#L21

> In short:
>  1. Implement the Action interface in a class with a no-argument constructor
>  2. Annotate the implementation with @Command
>  3. Annotate the implementation with @Service
>  4. Create fields for the OSGi services needed and annotate these fields
>     with @Reference

> Karaf will then instantiate the class as needed and provide the OSGi
> services (so there is no need to mess around with singletons).

Forgot one thing:
 5. Add a Karaf-Commands manifest header:
     http://karaf.apache.org/manual/latest/#_manifest

But after that it worked like a charm.
  
https://github.com/steinarb/ukelonn/blob/work/use-liquibase/ukelonn.bundle/src/main/java/no/priv/bang/ukelonn/impl/KarafReleaseLiquibaseLockCommand.java

Reply via email to