Jenkins
  • Blog
  • Documentation
    Use Jenkins Extend Jenkins Use-cases  - Android  - C/C++  - Docker  - Embedded  - GitHub  - Java  - PHP  - Continuous Delivery  - Python  - Ruby
  • Plugins
  • Community
    Overview Chat Meet Events Issue Tracker Mailing Lists Wiki Account Management Special Interest Groups  - Advocacy and Outreach  - Chinese Localization  - Cloud Native  - Google Summer of Code  - Hardware and EDA  - Jenkins Special Interest Groups  - Pipeline Authoring  - Platform
  • Sub-projects
    Overview Blue Ocean Evergreen Google Summer of Code in Jenkins Infrastructure Jenkins Area Meetups Jenkins Configuration as Code Jenkins X Jenkins Remoting
  • About
    Security Press Awards Conduct Artwork
  • English
    δΈ­ζ–‡ Chinese
  • Download
 

Topics

  1. Architecture  
  2. Initialization and Startup  
  3. Extensibility  
  4. Model  
  5. Handling Requests  
  6. Security  
  7. Persistence  
  8. Scheduling  
  9. Views  
  10. Forms  
  11. Internationalization and Localization  
  12. Distributed Builds  
  13. Jenkins CLI  
  14. Testing  
  15. Plugin development  
  16. Publishing Plugins
  17. Blue Ocean  
  18. Building and Debugging  
  19. Setting up a Development Environment  

How-To Guides

Resources

Extensions Index
Javadoc
Taglibs
  • Core
  • Stapler
  • Jelly Core
Tools
  • Maven HPI Plugin

Plugin development

This section is a work in progress. Want to help? Check out the jenkinsci-docs mailing list. For other ways to contribute to the Jenkins project, see this page about participating and contributing.

Sections

  • Plugin Build Process
  • Dependencies and Class Loading
    How code is physically structured in Jenkins core and plugins, and how this relates to dependencies and Java class loading behavior.

How-To Guides

  • Updating Your Maven Parent POM
  • Writing an SCM Plugin
  • Writing Pipeline-Compatible Plugins

References

  • Plugin parent POM on GitHub
  • Adding tool auto-installer
  • Choosing Jenkins version to build against
  • Dependencies among plugins
  • Tips for optional dependencies
  • Making your plugin work with Blue Ocean
  • Marking a new plugin version as incompatible with older versions
  • Site Creation and Deployment
  • Hints for plugin-development newbies
  • Splitting off plugins from core
  • Plugin Release Tips
  • Gradle JPI Plugin

Improve this page | Page history

The content driving this site is licensed under the Creative Commons Attribution-ShareAlike 4.0 license.

Resources
  • Events
  • Documentation
  • Blog
Solutions
  • Android
  • C/C++
  • Docker
  • Embedded
  • GitHub
  • Java
  • PHP
  • Continuous Delivery
  • Python
  • Ruby
Project
  • Issue tracker
  • Wiki
  • GitHub
  • Jenkins on Jenkins
Community
  • Users mailing list
  • Developers mailing list
  • Special Interest Groups
  • Twitter
  • Reddit
  • Merchandise
  • Awards