anchor.diff:  
   === Java Plugins
   
  -The section explains how you can set up the https://github.com/killbill/killbill-hello-world-java-plugin[hello world plugin] in Kill Bill. Once set up, this can be used as the basis for developing your own plugin
  +The section explains how you can set up the https://github.com/killbill/killbill-hello-world-java-plugin[hello world plugin] in Kill Bill. Once set up, this can be used as the basis for developing your own plugin.
   
   ==== Prerequisites
   
  
positive.code: 
  The build will produce a `jar` under the `target` directory which should contain all the classes and configuration files directly accessible for that plugin. OSGI also provides a way to import classes that are exported by other plugins and this is configured in the `Import-Package` section of the `maven-bundle-plugin`. The hello world plugin provides some default based on the https://github.com/killbill/killbill-platform/blob/killbill-platform-0.36.2/osgi/src/main/java/org/killbill/billing/osgi/config/OSGIConfig.java#L49[classes exported by the system bundle in Kill Bill]. Kill Bill offers a system property, `org.killbill.osgi.system.bundle.export.packages.extra`, to specify additional packages to be exported by the system bundle and that could in turn be imported by the plugin. Desiging which packages are served by the plugin jar and which one are imported from another bundle (and mostly the system bundle inside Kill Bill) is one of the challenges of the OSGI mechanism.
  
  Once the pom is correctly written, building the plugin is straightforward:
  
  ==== Examples of Java Plugins
  
  
negative.code: 
  . Set up the code in the IDE of your choice. You can refer to our https://docs.killbill.io/latest/development.html#_setting_up_code_in_an_ide[development document]  for detailed instructions on how to clone a repository and set up the code in Eclipse
  
  . This path where the repository is cloned will be referred to as *PROJECT_ROOT* from now on. For example, if you choose `C:/MyProjects/killbill-hello-world-java-plugin`, *PROJECT_ROOT* refers to this path. 
  
  . Once the code is set up in Eclipse, your Eclipse workspace should look like this:
  image:https://github.com/killbill/killbill-docs/raw/v3/userguide/assets/img/plugin_development/eclipse_workspace_with_helloworldplugin.png[align=center]
  