Annotation Interface Export


@MinMuleVersion("4.1") @Target(TYPE) @Retention(RUNTIME) @Documented public @interface Export
Specifies classes and resources that an extension should expose beyond the default ClassLoader isolation.

This annotation's usage is optional. By default, the SDK will determine at compile time which are the minimum set of classes and resources that the extension needs to expose in order to function. This annotation's purpose is to allow adding additional artifacts in border cases. Using this annotation should not be something usual. When needed, this annotation should be placed on the same class that is annotated with Extension

The referenced classes and resources will be visible by the runtime and other extensions. USE WITH CARE, negligent use of this annotation could result in class path issues when exported classes conflict with those in the runtime or other extensions consuming the referenced types.

Since:
1.0
  • Element Details

    • classes

      Class[] classes
      Returns:
      The additional classes that should be exported
      Default:
      {}
    • resources

      String[] resources
      Returns:
      The additional resources that should be exported
      Default:
      {}