[JetForcer] Plugin for handy Force.com development with JetBrains IDEs

Compatible with: IntelliJ IDEA PhpStorm WebStorm PyCharm RubyMine AppCode CLion GoLand DataGrip Rider Android Studio
Dec 07, 2017
211 766
JetForcer is a Salesforce Apex IDE and plugin for IntelliJ platform. JetForcer simplifies development and deployment of Apex, VisualForce and other Force.com metadata types. JetForcer is available in two versions:
  • as a IntelliJ IDEA plugin
  • standalone IDE based on IDEA Community Edition


The following features are available:
  • Offline validation (robust parser, type inference, detects unresolved references)
  • Incremental deploy/retrieve, smart check deploy conflicts
  • Code insight (Inspections, Intentions, Quick Fixes, Refactorings, Live Templates, Safe delete)
  • Rename refactorings
  • Code completion (postfix, statements, punctuation, type inference based)
  • Powerful navigation (Find In Path, Find Usages, Go To, Show Hierarchy)
  • Execute anonymous
  • Test framework
  • Log viewer
  • Code generation utils
  • Code coverage
  • Foldings
  • Structure view
  • Code formatting

Download plugin

Recent change notes

  • SFDX:
    • Scratch orgs managing
    • SObjects and fields resolve
  • Trace Flags and Debug Levels:
    • Set User Trace Flags for any org user
    • Open "Trace Flags" and "Debug Levels" tables in browser
    • Remove/add debug level in "Trace Flags" tool window
    • Quickly change debug level for a trace flag
    • Create new trace flag from the "Trace Flags" tool window
    • Scroll to inserted flag in the "Trace Flags" table
    • Newly created trace flag is automatically added to the "Trace Flags" table
    • New trace flag dialog: ability to navigate in completion popup with Up/Down keys
    • Quickly activate an expired trace flag
    • Automatically sort table after updating trace flag with "Active for next:" task
    • Automatically update trace flag table cell value after invoking "Activate for next:" task
    • Show trace flag status icon instead of filling table cell
    • Change debug level category via combobox
    • Sort table, descending sort by expiration column is default
  • Lightning:
    • JS: resolve/complete $A and its methods
    • JS: if type is inferred for an expression do not complete methods of other types
    • JS: support aura:html attributes in HTML tags in attribute references
    • Attributes from aura:interface are resolved in inherited components
    • Rename for lightning component attributes
    • More friendly message if aura:handler@event contains component event and aura:handler@name is not added
    • Rename for client controller members in lightning
  • Visualforce:
    • Array expressions support
  • Debug logs:
    • Retrieve Debug logs manually (without waiting for log listening delay)
  • Apex VCS:
    • Notify user about local changes when switching to ApexVCS
  • Intentions and code generation:
    • Generate client controller method template via 'Alt-Insert'
    • Quick-fix to create controller method
    • Quick-fix to create lightning controller
    • Quick-fix for aura:handler@event
  • Bugfix:
    • String.getChars() wrong type signature
    • No physical file associated with lightning component path
    • Ctrl+Z should revert deletion for all lightning parts
    • Custom object from managed package is not resolved
    • Wrong attr value & support map in attrs
    • Error in enumerated attributes is not updated after value change (when we use template language in attribute value)
    • Code completion should suggest variants even if namespace is not typed
    • Appropriate SObject type name should be suggested for 'sObjectType' json property value in lightning components
    • Deploy failed but there are no errors in the panel
    • Ignore EOL at EOF on deploy