Jenkins Developer Documentation

  • Plugin Tutorial
    • Preparing for Plugin Development
    • Create a Plugin
    • Build and Run the Plugin
    • Extend the Plugin
  • Architecture
    • Model
    • Stapler Web Framework
    • Extensions
    • Remoting
  • Initialization and Startup
    • Embedded Winstone and executable-war
    • Extensibility
    • Model
  • Handling Requests
    • Routing Requests
    • Web Methods
    • Responding to Requests
    • Expose HTTP API with JSON content with Jenkins
    • Deprecated reflective access
  • Security
    • Storing Secrets
    • Securely implementing form validation
    • xref:xss-prevention.adoc
    • Rendering User Content
    • Remoting Callables
    • Restricting HTTP Access to <code>AccessControlled</code> Objects
    • Content-Security-Policy Compatibility
    • Miscellaneous API Usage Recommendations
  • Persistent Objects
    • Backward Compatibility with XStream
    • Registering a Custom Converter
    • Marking Incompatible Releases
    • Scheduling
  • Views
    • Read only view
    • Table to div layout migration
    • Exposing bundled resources
    • Icon path to icon class migration
    • Symbols
  • Forms
    • Form validation
    • Adding tool tips
    • Jelly form controls
    • Structured form submission
  • Internationalization and Localization
    • Internationalizing Messages in Java Source Code
    • Internationalizing Messages in Jelly Views
    • Internationalizing Messages in Groovy Views
    • Advanced Localization
    • Prepare a Java Source File for Localization
    • Prepare a Jelly-based View for Localization
    • Preparing a Groovy-based View for Localization
    • Translate a help file
    • Translate a properties file
  • Jenkins Crowdin Integration
    • Setup a Crowdin Project
    • Translating plugins through Crowdin
    • How to proofread translation suggestions
    • Troubleshooting crowdin issues
    • Distributed Builds
  • Jenkins CLI
    • Writing CLI commands
    • Telemetry
  • Plugin Development
    • Plugin Build Process
    • Choosing a Jenkins version to build against
    • Dependency Management
    • Dependencies and Class Loading
    • Optional dependencies
    • Plugin Release Tips
    • Incrementals: Developing Components in Parallel
    • Updating Your Maven Parent POM
    • Mark a new plugin version as incompatible with older versions
    • Writing an SCM Plugin
    • Writing Pipeline-Compatible Plugins
  • Plugin Governance
    • Managing plugin permissions
    • Adopt a Plugin
    • Deprecating or removing a Plugin
  • Publishing Plugins
    • Style Guides
    • Source Code Hosting
    • Artifact Repository
    • Plugin Documentation
    • Plugin Wiki Pages
    • Plugin Site
    • Continuous Integration - buildPlugin
    • Usage Statistics
    • Before you start
    • Creating a new plugin
    • Guide to Plugin Hosting
    • Performing a Plugin Release
    • Setting up automated plugin release
    • Performing a Plugin Release manually
    • Removing plugins from distribution
    • Publishing Experimental Plugin Releases
    • Blue Ocean
  • Building and Debugging
    • IntelliJ Setup for Jenkins Core Development
  • Development Environment
    • IDE Configuration
    • Taglibs
  • Improve a Plugin Tutorial
    • Add a Jenkinsfile
    • Update parent POM
    • Update Jenkins version
    • Update SCM URL
    • Add more spotbugs checks
    • Check dependencies
    • Use plugin bill of materials
    • Enable incrementals
    • Migrate documentation to GitHub
    • Add a contributing guide
    • Report an Issue
    • Replace JSR-305
    • Convert translations
    • Move description
  • Extensions Index
    • Extension Points defined in Job and Stage monitoring Plugin
    • Extension Points defined in Authorize Project Plugin
    • Extension Points defined in Yet Another Docker Plugin
    • Extension Points defined in One-Shot Executor Plugin
    • Extension Points defined in Run Condition Plugin
    • Extension Points defined in Gitee Plugin
    • Extension Points defined in Alauda DevOps Credentials Provider Plugin
    • Extension Points defined in OpenTelemetry Plugin
    • Extension Points defined in Forensics API Plugin
    • Extension Points defined in Delivery Pipeline Plugin
    • Extension Points defined in ClearCase UCM Plugin
    • Extension Points defined in Dashboard View Plugin
    • Extension Points defined in Kubernetes Plugin
    • Extension Points defined in SCM API Plugin
    • Extension Points defined in Google Cloud Storage Plugin
    • Extension Points defined in Filesystem Trigger Plugin
    • Extension Points defined in Subversion Plugin
    • Extension Points defined in CloudBees Docker Custom Build Environment Plugin
    • Extension Points defined in GitHub Authentication Plugin
    • Extension Points defined in Adobe Cloud Manager Plugin
    • Extension Points defined in GitHub Integration Plugin
    • Extension Points defined in Chroot Plugin
    • Extension Points defined in OpenID Connect Provider Plugin
    • Extension Points defined in Publish Over FTP Plugin
    • Extension Points defined in Build View Column Plugin
    • Extension Points defined in Sumologic Publisher Plugin
    • Extension Points defined in Fortify Plugin
    • Extension Points defined in MAT Performance Benchmarking by Broadcom Plugin
    • Extension Points defined in Config File Provider Plugin
    • Extension Points defined in Artifact Manager on S3 Plugin
    • Extension Points defined in Build Cause Run Condition Plugin
    • Extension Points defined in Jobcopy Builder Plugin
    • Extension Points defined in Metrics Plugin
    • Extension Points defined in WMI Windows Agents Plugin
    • Extension Points defined in SSH server Plugin
    • Extension Points defined in Consul Plugin
    • Extension Points defined in Orka by MacStadium Plugin
    • Extension Points defined in OpenStack Cloud Plugin
    • Extension Points defined in Build Failure Analyzer Plugin
    • Extension Points defined in Label Verifier Plugin
    • Extension Points defined in Alauda Kubernetes Suport Plugin
    • Extension Points defined in Hyper.sh Slaves Plugin
    • Extension Points defined in Content Security Policy Plugin
    • Extension Points defined in Credentials Binding Plugin
    • Extension Points defined in Warnings Next Generation Plugin
    • Extension Points defined in Sectioned View Plugin
    • Extension Points defined in SSH Credentials Plugin
    • Extension Points defined in Support Core Plugin
    • Extension Points defined in External Workspace Manager Plugin
    • Extension Points defined in Micro Focus Application Automation Tools Plugin
    • Extension Points defined in Project Inheritance Plugin
    • Extension Points defined in Bitbucket Branch Source Plugin
    • Extension Points defined in Git client Plugin
    • Extension Points defined in Audit to Database Plugin
    • Extension Points defined in Configuration Slicing Plugin
    • Extension Points defined in Publish Over CIFS Plugin
    • Extension Points defined in Jira Plugin
    • Extension Points defined in MATLAB Plugin
    • Extension Points defined in Process cleaner Plugin
    • Extension Points defined in Matrix Combinations Plugin
    • Extension Points defined in docker-build-step Plugin
    • Extension Points defined in buildgraph-view Plugin
    • Extension Points defined in GCP Secrets Manager Credentials Provider Plugin
    • Extension Points defined in Token Macro Plugin
    • Extension Points defined in Node Iterator API Plugin
    • Extension Points defined in Run Selector Plugin
    • Extension Points defined in VectorCAST Execution Plugin
    • Extension Points defined in Gating Core Plugin
    • Extension Points defined in HashiCorp Vault Plugin
    • Extension Points defined in JUnit Plugin
    • Extension Points defined in Build Keeper Plugin
    • Extension Points defined in Protecode SC Plugin
    • Extension Points defined in Amazon EC2 Plugin
    • Extension Points defined in Nirmata Plugin
    • Extension Points defined in Attention Plugin
    • Extension Points defined in multi-module-tests-publisher Plugin
    • Extension Points defined in Maven Artifact ChoiceListProvider (Nexus) Plugin
    • Extension Points defined in CVS Plugin
    • Extension Points defined in Google Cloud Backup Plugin
    • Extension Points defined in Job DSL Plugin
    • Extension Points defined in Build Alias Setter Plugin
    • Extension Points defined in Port Allocator Plugin
    • Extension Points defined in Embeddable Build Status Plugin
    • Extension Points defined in instant-messaging Plugin
    • Extension Points defined in promoted builds Plugin
    • Extension Points defined in Pub-Sub "light" Bus Plugin
    • Extension Points defined in Helix QAC Plugin
    • Extension Points defined in Pipeline Maven Integration Plugin
    • Extension Points defined in Extreme Notification Plugin
    • Extension Points defined in Thycotic DevOps Secrets Vault Plugin
    • Extension Points defined in Maven Repository Server Plugin
    • Extension Points defined in Deploy to container Plugin
    • Extension Points defined in URLTrigger Plugin
    • Extension Points defined in ElasticBox CI Plugin
    • Extension Points defined in OctoPerf Load Testing Plugin
    • Extension Points defined in Git server Plugin
    • Extension Points defined in Periodic Backup Plugin
    • Extension Points defined in MQ Notifier Plugin
    • Extension Points defined in BuildContext Capture Plugin
    • Extension Points defined in Localization Support Plugin
    • Extension Points defined in Performance Plugin
    • Extension Points defined in vSphere Plugin
    • Extension Points defined in Keychains and Provisioning Profiles Management Plugin
    • Extension Points defined in Exclusion Plugin
    • Extension Points defined in Folders Plugin
    • Extension Points defined in Docker Slaves Plugin
    • Extension Points defined in Configuration as Code Plugin - Groovy Scripting Extension Plugin
    • Extension Points defined in Slack Notification Plugin
    • Extension Points defined in Google Deployment Manager Plugin
    • Extension Points defined in JiraTestResultReporter Plugin
    • Extension Points defined in Common API for Blue Ocean Plugin
    • Extension Points defined in Appdome Build-2secure Plugin
    • Extension Points defined in Metrics Aggregation Plugin
    • Extension Points defined in Flexible Publish Plugin
    • Extension Points defined in jira-ext Plugin
    • Extension Points defined in Sematext Plugin
    • Extension Points defined in Shared Objects Plugin
    • Extension Points defined in Node and Label parameter Plugin
    • Extension Points defined in Rebuilder Plugin
    • Extension Points defined in SCM-Manager Plugin
    • Extension Points defined in Favorite Plugin
    • Extension Points defined in Pipeline Input Step Notification Plugin
    • Extension Points defined in Puppet Plugin
    • Extension Points defined in Kubernetes Credentials Provider Plugin
    • Extension Points defined in AWS Kinesis Consumer Plugin
    • Extension Points defined in Job Cacher Plugin
    • Extension Points defined in JaCoCo Plugin
    • Extension Points defined in Script Security Plugin
    • Extension Points defined in Pipeline implementation for Blue Ocean Plugin
    • Extension Points defined in Logstash Plugin
    • Extension Points defined in Pipeline: Deprecated Groovy Libraries Plugin
    • Extension Points defined in ClearCase Plugin
    • Extension Points defined in Database Plugin
    • Extension Points defined in Web for Blue Ocean Plugin
    • Extension Points defined in Build Trigger Badge Plugin
    • Extension Points defined in Alibaba Cloud ECS Plugin
    • Extension Points defined in Design Library Plugin
    • Extension Points defined in DeployHub Plugin
    • Extension Points defined in Diagnostics Plugin
    • Extension Points defined in xUnit Plugin
    • Extension Points defined in Code Coverage API Plugin
    • Extension Points defined in CAS Plugin
    • Extension Points defined in Parameterized Trigger Plugin
    • Extension Points defined in CodeCover Plugin
    • Extension Points defined in Unique ID Library Plugin
    • Extension Points defined in Maven Integration Plugin
    • Extension Points defined in CloudBees CD Plugin
    • Extension Points defined in Health Advisor by CloudBees Plugin
    • Extension Points defined in Job and Node ownership Plugin
    • Extension Points defined in Personal View Plugin
    • Extension Points defined in CloudBees Docker Traceability Plugin
    • Extension Points defined in Pipeline: Groovy Libraries Plugin
    • Extension Points defined in Dependency Graph Viewer Plugin
    • Extension Points defined in Email Extension Plugin
    • Extension Points defined in Recipe Plugin
    • Extension Points defined in UpdateSites Manager Plugin
    • Extension Points defined in Job Restrictions Plugin
    • Extension Points defined in Apica Loadtest Plugin
    • Extension Points defined in Extensible Choice Parameter Plugin
    • Extension Points defined in NodeJS Plugin
    • Extension Points defined in Pretested Integration Plugin
    • Extension Points defined in VectorCAST Coverage Plugin
    • Extension Points defined in REST Implementation for Blue Ocean Plugin
    • Extension Points defined in OpenID Plugin
    • Extension Points defined in Priority Sorter Plugin
    • Extension Points defined in Pipeline: API Plugin
    • Extension Points defined in Android Signing Plugin
    • Extension Points defined in Scoring Load Balancer Plugin
    • Extension Points defined in Matrix Project Plugin
    • Extension Points defined in Environment Injector Plugin
    • Extension Points defined in Block Queued Job Plugin
    • Extension Points defined in Role-based Authorization Strategy Plugin
    • Extension Points defined in Security Inspector Plugin
    • Extension Points defined in Lucene-Search Plugin
    • Extension Points defined in Docker Pipeline Plugin
    • Extension Points defined in Display URL API Plugin
    • Extension Points defined in HipChat Plugin
    • Extension Points defined in Theme Manager Plugin
    • Extension Points defined in Bitbucket Pipeline for Blue Ocean Plugin
    • Extension Points defined in JWT for Blue Ocean Plugin
    • Extension Points defined in SaltStack Plugin
    • Extension Points defined in pom2config Plugin
    • Extension Points defined in oki-docki Plugin
    • Extension Points defined in Matrix Authorization Strategy Plugin
    • Extension Points defined in Branch API Plugin
    • Extension Points defined in Pending Changes Plugin
    • Extension Points defined in Audit Trail Plugin
    • Extension Points defined in Pipeline: Step API Plugin
    • Extension Points defined in Credentials Plugin
    • Extension Points defined in CodeSonar Plugin
    • Extension Points defined in RabbitMQ Consumer Plugin
    • Extension Points defined in JWT Support Plugin
    • Extension Points defined in GitHub Plugin
    • Extension Points defined in Gerrit Trigger Plugin
    • Extension Points defined in Zscaler IaC Scanner Plugin
    • Extension Points defined in OAuth Credentials Plugin
    • Extension Points defined in deployment-notification Plugin
    • Extension Points defined in Docker Commons Plugin
    • Extension Points defined in 1Password Secrets Plugin
    • Extension Points defined in Build Pipeline Plugin
    • Extension Points defined in Pull Request Monitoring Plugin
    • Extension Points defined in Build Timeout Plugin
    • Extension Points defined in Mock Load Builder Plugin
    • Extension Points defined in Mercurial Plugin
    • Extension Points defined in Custom Build Properties Plugin
    • Extension Points defined in Skytap Cloud CI Plugin
    • Extension Points defined in All changes Plugin
    • Extension Points defined in Google Health Check Plugin
    • Extension Points defined in GitLab Authentication Plugin
    • contents.json.haml
    • Extension Points defined in Gatekeeper Plugin
    • Extension Points defined in Simple Theme Plugin
    • Extension Points defined in Deployer Framework Plugin
    • Extension Points defined in Ivy Plugin
    • Extension Points defined in Blue Ocean Pipeline Editor Plugin
    • Extension Points defined in CustomHistory Plugin
    • Extension Points defined in Build Step Environment Filter Utilities Plugin
    • Extension Points defined in Mailer Plugin
    • Extension Points defined in Copy Artifact Plugin
    • Extension Points defined in Publish Over SSH Plugin
    • Extension Points defined in Git Plugin
    • Extension Points defined in Scriptler Plugin
    • Extension Points defined in Node sharing executor Plugin
    • Extension Points defined in Conditional BuildStep Plugin
    • Extension Points defined in Jenkins Core
    • Extension Points defined in Job Configuration History Plugin
    • Extension Points defined in MISRA Compliance Report Plugin
    • Extension Points defined in suite-test-groups-publisher Plugin
    • Extension Points defined in Hubot Pipeline Steps Plugin
    • Extension Points defined in Defensics Plugin
    • Extension Points defined in categorized-view Plugin
    • Extension Points defined in Google Cloud Build Plugin
    • Extension Points defined in DTKit 2 API Plugin
    • Extension Points defined in Checks API Plugin
    • Extension Points defined in SSH Agent Plugin
    • Extension Points defined in GNAT Plugin
    • Extension Points defined in Durable Task Plugin
    • Extension Points defined in REST API for Blue Ocean Plugin
    • Extension Points defined in Alauda DevOps Pipeline Plugin
    • Extension Points defined in SSH Build Agents Plugin
Jenkins Developer Documentation latest
  • About Jenkins
    • latest
  • All of Jenkins Images
    • latest
  • Jenkins Books
    • latest
  • Jenkins Community
    • latest
  • Jenkins Developer Documentation
    • latest
  • Jenkins Events
    • latest
  • Jenkins Project
    • default
  • Jenkins Projects
    • default
  • Jenkins Security Advisories
    • latest
  • Jenkins Solutions Page
    • 2.401.3
    • 2.2
    • 2.1
  • Jenkins Special Interest Groups
    • latest
  • Jenkins Tutorials
    • 2.401.3
    • 2.2
    • 2.1
  • Jenkins User Documentation
    • 2.401.3
    • 2.2
    • 2.1
  • Jenkins Developer Documentation
  • Development Environment
Edit this Page

Development Environment

This chapter will give an overview about what you need to know about preparing your development environment for Jenkins core and plugin development

IntelliJ Setup for Jenkins Core Development IDE Configuration