IntelliJ IDEA plugin for JBang

Related tags

Plugin jbang-idea
Overview

jbang-intellij-plugin

JBang plugin is a plugin for IntelliJ IDEA to integrate JBang.

The following features are available:

  • JSON Schema for jbang-catalog.json
  • JDKs sync with JBang: sync JDKs from JBang to IntelliJ IDEA
  • JBang script creation from file templates: New -> JBang Script
  • Run Configuration support: run JBang script by right click
    • file name end with '.java', '.kt' or '.jsh'
    • file code should contain ///usr/bin/env jbang or //DEPS

Install

Preferences > Plugins > Marketplace > Search for "jbang" > Install Plugin > Restart IntelliJ IDEA

Build

$ # JDK 11 required
$ ./gradlew -x test patchPluginXml buildPlugin

Preferences > Plugins > Gear Icon Right Click > Install Plugin from Disk > Choose $PROJECT_DIR/build/distributions/jbang-intellij-plugin-0.x.0.zip > Restart IntelliJ IDEA

Comments
  • IDEA freezes completely on Windows when syncing DEPS

    IDEA freezes completely on Windows when syncing DEPS

    So when I try to sync some JBang script's dependencies in IDEA with the Sync JBang DEPS to Module the whole IDE freezes and I have to force shutdown it. It happens only on Windows for me.

    JBang version: 0.88.0 JBang IDEA plugin version: 0.15.0 IDEA version: IntelliJ IDEA 2021.3.2 Build #IU-213.6777.52, built on January 28, 2022 but if I remember well it happened on earlier IDEA version as well.

    What I saw in the threadDump is that this command line stucks, and waits forever: https://github.com/jbangdev/jbang-idea/blob/main/src/main/kotlin/dev/jbang/idea/JBangCli.kt#L30

    @Throws(Exception::class)
        fun resolveScriptDependencies(scriptFilePath: String): List<String> {
            val jbangCmd = getJBangCmdAbsolutionPath()
            val pb = ProcessBuilder(jbangCmd, "info", "classpath", "--fresh", scriptFilePath)
            val process = pb.start()
            process.waitFor()
            if (process.exitValue() != 0) {
                throw Exception(processErrorToText(process))
            } else {
                return processOutputToText(process).split(':', ';').filter { !it.contains(".jbang") }
            }
        }
    

    If I run the following command in the command line jbang.cmd info classpath --fresh src/script.java it succeeds.

    Here is the threadDump log for it:

    "AWT-EventQueue-0" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
    	at [email protected]/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
    	at dev.jbang.idea.JBangCli.resolveScriptDependencies(JBangCli.kt:30)
    	at dev.jbang.idea.actions.SyncDependenciesAction.syncDepsToModule(SyncDependenciesAction.kt:273)
    	at dev.jbang.idea.actions.SyncDependenciesAction.actionPerformed(SyncDependenciesAction.kt:82)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:244)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil$$Lambda$3681/0x0000000802127040.run(Unknown Source)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:265)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:244)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$performAction$0(ActionMenuItem.java:277)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter$$Lambda$3680/0x0000000802127c40.run(Unknown Source)
    	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
    	at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.performAction(ActionMenuItem.java:269)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:284)
    	at [email protected]/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$2(ActionMenuItem.java:111)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$$Lambda$3679/0x0000000802127840.run(Unknown Source)
    	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:111)
    	at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
    	at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
    	at [email protected]/java.awt.Component.processMouseEvent(Component.java:6654)
    	at [email protected]/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
    	at [email protected]/java.awt.Component.processEvent(Component.java:6419)
    	at [email protected]/java.awt.Container.processEvent(Container.java:2263)
    	at [email protected]/java.awt.Component.dispatchEventImpl(Component.java:5029)
    	at [email protected]/java.awt.Container.dispatchEventImpl(Container.java:2321)
    	at [email protected]/java.awt.Component.dispatchEvent(Component.java:4861)
    	at [email protected]/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
    	at [email protected]/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
    	at [email protected]/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
    	at [email protected]/java.awt.Container.dispatchEventImpl(Container.java:2307)
    	at [email protected]/java.awt.Window.dispatchEventImpl(Window.java:2790)
    	at [email protected]/java.awt.Component.dispatchEvent(Component.java:4861)
    	at [email protected]/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
    	at [email protected]/java.awt.EventQueue$4.run(EventQueue.java:727)
    	at [email protected]/java.awt.EventQueue$4.run(EventQueue.java:721)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
    	at [email protected]/java.awt.EventQueue$5.run(EventQueue.java:751)
    	at [email protected]/java.awt.EventQueue$5.run(EventQueue.java:749)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    	at [email protected]/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
    	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
    	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
    	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
    	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
    	at com.intellij.ide.IdeEventQueue$$Lambda$576/0x0000000800668440.compute(Unknown Source)
    	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
    	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
    	at com.intellij.ide.IdeEventQueue$$Lambda$575/0x0000000800654440.run(Unknown Source)
    	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
    	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
    	at [email protected]/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    	at [email protected]/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    	at [email protected]/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    	at [email protected]/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    	at [email protected]/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    	at [email protected]/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
    
    "BaseDataReader: output stream of fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
    	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
    	at [email protected]/java.io.BufferedInputStream.read1(BufferedInputStream.java:290)
    	at [email protected]/java.io.BufferedInputStream.read(BufferedInputStream.java:351)
    	at [email protected]/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
    	at [email protected]/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
    	at [email protected]/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
    	at [email protected]/java.io.InputStreamReader.read(InputStreamReader.java:181)
    	at [email protected]/java.io.Reader.read(Reader.java:229)
    	at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:133)
    	at com.intellij.util.io.BaseDataReader.readAvailable(BaseDataReader.java:74)
    	at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:155)
    	at com.intellij.util.io.BaseDataReader$$Lambda$928/0x0000000800a54c40.run(Unknown Source)
    	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    	at com.intellij.util.io.BaseDataReader.lambda$start$0(BaseDataReader.java:50)
    	at com.intellij.util.io.BaseDataReader$$Lambda$926/0x0000000800a55440.run(Unknown Source)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "BaseDataReader: error stream of fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
    	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
    	at [email protected]/sun.nio.cs.StreamDecoder.readBytes(StreamDecoder.java:284)
    	at [email protected]/sun.nio.cs.StreamDecoder.implRead(StreamDecoder.java:326)
    	at [email protected]/sun.nio.cs.StreamDecoder.read(StreamDecoder.java:178)
    	at [email protected]/java.io.InputStreamReader.read(InputStreamReader.java:181)
    	at [email protected]/java.io.Reader.read(Reader.java:229)
    	at com.intellij.util.io.BaseOutputReader.readAvailableBlocking(BaseOutputReader.java:133)
    	at com.intellij.util.io.BaseDataReader.readAvailable(BaseDataReader.java:74)
    	at com.intellij.util.io.BaseDataReader.doRun(BaseDataReader.java:155)
    	at com.intellij.util.io.BaseDataReader$$Lambda$928/0x0000000800a54c40.run(Unknown Source)
    	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    	at com.intellij.util.io.BaseDataReader.lambda$start$0(BaseDataReader.java:50)
    	at com.intellij.util.io.BaseDataReader$$Lambda$926/0x0000000800a55440.run(Unknown Source)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "EDT Performance Checker" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
    
    	at [email protected]/sun.management.ThreadImpl.dumpThreads0(Native Method)
    	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:521)
    	at [email protected]/sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:509)
    	at com.intellij.diagnostic.ThreadDumper.getThreadInfos(ThreadDumper.java:65)
    	at com.intellij.diagnostic.SamplingTask.dumpThreads(SamplingTask.java:47)
    	at com.intellij.diagnostic.SamplingTask$$Lambda$12689/0x0000000804a8f440.run(Unknown Source)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305)
    	at com.intellij.util.concurrency.SchedulingWrapper$MyScheduledFutureTask.run(SchedulingWrapper.java:223)
    	at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:246)
    	at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:32)
    	at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:225)
    	at com.intellij.util.concurrency.BoundedTaskExecutor$1$$Lambda$667/0x00000008006f2840.run(Unknown Source)
    	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    	at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:214)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "fsnotifier.exe" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.lang.ProcessImpl.waitForInterruptibly(Native Method)
    	at [email protected]/java.lang.ProcessImpl.waitFor(ProcessImpl.java:554)
    	at com.intellij.execution.process.ProcessWaitFor.lambda$new$0(ProcessWaitFor.java:28)
    	at com.intellij.execution.process.ProcessWaitFor$$Lambda$925/0x0000000800a55040.run(Unknown Source)
    	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:213)
    	at com.intellij.execution.process.ProcessWaitFor.lambda$new$1(ProcessWaitFor.java:23)
    	at com.intellij.execution.process.ProcessWaitFor$$Lambda$924/0x0000000800a55c40.run(Unknown Source)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Netty Builtin Server 1" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
    	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
    	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
    	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
    	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
    	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Netty Builtin Server 2" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
    	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
    	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
    	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
    	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
    	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "ApplicationImpl pooled thread 4" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive0(Native Method)
    	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive(TwoStacksPlainDatagramSocketImpl.java:123)
    	at [email protected]/java.net.DatagramSocket.receive(DatagramSocket.java:814)
    	at com.intellij.i.O.b.q.v(q.java:55)
    	at com.intellij.i.O.b.l.run(l.java:21)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "ApplicationImpl pooled thread 5" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive0(Native Method)
    	at [email protected]/java.net.TwoStacksPlainDatagramSocketImpl.receive(TwoStacksPlainDatagramSocketImpl.java:123)
    	at [email protected]/java.net.DatagramSocket.receive(DatagramSocket.java:814)
    	at com.intellij.i.O.b.q.v(q.java:55)
    	at com.intellij.i.O.b.l.run(l.java:21)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "nioEventLoopGroup-3-1" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:141)
    	at io.netty.channel.nio.SelectedSelectionKeySetSelector.select(SelectedSelectionKeySetSelector.java:68)
    	at io.netty.channel.nio.NioEventLoop.select(NioEventLoop.java:813)
    	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:460)
    	at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986)
    	at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    	at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "pool-6-thread-1" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/java.io.FileInputStream.readBytes(Native Method)
    	at [email protected]/java.io.FileInputStream.read(FileInputStream.java:279)
    	at [email protected]/java.io.BufferedInputStream.fill(BufferedInputStream.java:252)
    	at [email protected]/java.io.BufferedInputStream.read(BufferedInputStream.java:271)
    	at org.eclipse.lsp4j.jsonrpc.json.StreamMessageProducer.listen(StreamMessageProducer.java:79)
    	at org.eclipse.lsp4j.jsonrpc.json.ConcurrentMessageProcessor.run(ConcurrentMessageProcessor.java:113)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-1" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-2" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-3" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-4" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-5" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-6" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-7" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-8" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-9" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-10" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-11" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-dispatch-12" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at org.apache.hc.core5.reactor.SingleCoreIOReactor.doExecute(SingleCoreIOReactor.java:113)
    	at org.apache.hc.core5.reactor.AbstractSingleCoreIOReactor.execute(AbstractSingleCoreIOReactor.java:85)
    	at org.apache.hc.core5.reactor.IOReactorWorker.run(IOReactorWorker.java:44)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "HttpClient-1-SelectorManager" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll0(Native Method)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl$SubSelector.poll(WindowsSelectorImpl.java:357)
    	at [email protected]/sun.nio.ch.WindowsSelectorImpl.doSelect(WindowsSelectorImpl.java:182)
    	at [email protected]/sun.nio.ch.SelectorImpl.lockAndDoSelect(SelectorImpl.java:124)
    	at [email protected]/sun.nio.ch.SelectorImpl.select(SelectorImpl.java:136)
    	at platform/[email protected]/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:867)
    
    "Reference Handler" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
    
    	at [email protected]/java.lang.ref.Reference.waitForReferencePendingList(Native Method)
    	at [email protected]/java.lang.ref.Reference.processPendingReferences(Reference.java:241)
    	at [email protected]/java.lang.ref.Reference$ReferenceHandler.run(Reference.java:213)
    
    "AWT-Windows" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.awt.windows.WToolkit.eventLoop(Native Method)
    	at [email protected]/sun.awt.windows.WToolkit.run(WToolkit.java:308)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Thread-28" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    	at [email protected]/sun.net.dns.ResolverConfigurationImpl.notifyAddrChange0(Native Method)
    	at [email protected]/sun.net.dns.ResolverConfigurationImpl$AddressChangeListener.run(ResolverConfigurationImpl.java:144)
    
    "main" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
    
    
    "Signal Dispatcher" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
    
    
    "Attach Listener" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
    
    
    "WinLauncher external command processing thread" prio=0 tid=0x0 nid=0x0 runnable
         java.lang.Thread.State: RUNNABLE
     (in native)
    
    "ApplicationImpl pooled thread 47" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.SynchronousQueue$TransferStack@66279c5f
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:462)
    	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
    	at [email protected]/java.util.concurrent.SynchronousQueue.poll(SynchronousQueue.java:937)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1053)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
    	at [email protected]/java.security.AccessController.doPrivileged(Native Method)
    	at [email protected]/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@15088f4b
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    	at com.segment.analytics.internal.AnalyticsClient$Looper.run(AnalyticsClient.java:106)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@2ec5ec43
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
    	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
    	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "GitToolBox-schedule-0" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@713c0b34
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
    	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
    	at [email protected]/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Analytics" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/java.lang.Thread.sleep(Native Method)
    	at com.segment.backo.Backo.sleep(Backo.java:72)
    	at com.segment.analytics.internal.AnalyticsClient$BatchUploadTask.run(AnalyticsClient.java:205)
    	at [email protected]/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
    	at [email protected]/java.util.concurrent.FutureTask.run(FutureTask.java:264)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at com.segment.analytics.Platform$1$1.run(Platform.java:45)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "GitToolBox-task-17" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.SynchronousQueue$TransferStack@10eab6c7
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.awaitFulfill(SynchronousQueue.java:460)
    	at [email protected]/java.util.concurrent.SynchronousQueue$TransferStack.transfer(SynchronousQueue.java:361)
    	at [email protected]/java.util.concurrent.SynchronousQueue.take(SynchronousQueue.java:920)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Windows Shell integration" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3fcdf340
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "httpclient-main-1" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@649370b8
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1054)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1114)
    	at [email protected]/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Periodic tasks thread" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@4b10be5a
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
    	at [email protected]/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
    	at com.intellij.util.concurrency.AppDelayQueue.lambda$new$0(AppDelayQueue.java:26)
    	at com.intellij.util.concurrency.AppDelayQueue$$Lambda$238/0x00000008002af440.run(Unknown Source)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "sonarlint-analysis-engine" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3d14c217
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2081)
    	at [email protected]/java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:433)
    	at org.sonarsource.sonarlint.core.analysis.AnalysisEngine.executeQueuedCommands(AnalysisEngine.java:65)
    	at org.sonarsource.sonarlint.core.analysis.AnalysisEngine$$Lambda$8714/0x0000000803699040.run(Unknown Source)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "TimerQueue" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@3945181c
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at [email protected]/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2123)
    	at [email protected]/java.util.concurrent.DelayQueue.take(DelayQueue.java:229)
    	at [email protected]/javax.swing.TimerQueue.run(TimerQueue.java:171)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "DefaultDispatcher-worker-1" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-2" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-3" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-4" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-5" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-6" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-7" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-8" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-9" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-10" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "DefaultDispatcher-worker-12" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:357)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.park(CoroutineScheduler.kt:795)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.tryPark(CoroutineScheduler.kt:740)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:711)
    	at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
    
    "Common-Cleaner" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.lang.ref.ReferenceQueue$Lock@58395d9a
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
    	at [email protected]/jdk.internal.ref.CleanerImpl.run(CleanerImpl.java:148)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    	at [email protected]/jdk.internal.misc.InnocuousThread.run(InnocuousThread.java:134)
    
    "Java2D Disposer" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.lang.ref.ReferenceQueue$Lock@29108156
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
    	at [email protected]/sun.java2d.Disposer.run(Disposer.java:144)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "Finalizer" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.lang.ref.ReferenceQueue$Lock@48790657
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
    	at [email protected]/java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:170)
    
    "AWT-Shutdown" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.lang.Object@591c13ad
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.Object.wait(Object.java:328)
    	at [email protected]/sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:291)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "kotlinx.coroutines.DefaultExecutor" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on kotlinx.coroutines.DefaultExecutor@2341eb62
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
    	at kotlinx.coroutines.DefaultExecutor.run(DefaultExecutor.kt:82)
    	at [email protected]/java.lang.Thread.run(Thread.java:829)
    
    "File Events Trigger Timer" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.TaskQueue@b462d29
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.Object.wait(Object.java:328)
    	at [email protected]/java.util.TimerThread.mainLoop(Timer.java:527)
    	at [email protected]/java.util.TimerThread.run(Timer.java:506)
    
    "MultiThreadedHttpConnectionManager cleanup" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.lang.ref.ReferenceQueue$Lock@4b11304b
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
    	at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$ReferenceQueueThread.run(MultiThreadedHttpConnectionManager.java:1122)
    
    "JobScheduler FJ pool 7/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.parkUntil(LockSupport.java:275)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1619)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "Batik CleanerThread" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.lang.ref.ReferenceQueue$Lock@35da97f6
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:155)
    	at [email protected]/java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:176)
    	at org.apache.batik.util.CleanerThread.run(CleanerThread.java:106)
    
    "JobScheduler FJ pool 0/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 2/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 3/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 4/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 8/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 6/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "JobScheduler FJ pool 10/11" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: WAITING
     on java.util.concurrent.ForkJoinPool@66236a39
    	at [email protected]/jdk.internal.misc.Unsafe.park(Native Method)
    	at [email protected]/java.util.concurrent.locks.LockSupport.park(LockSupport.java:194)
    	at [email protected]/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1628)
    	at [email protected]/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
    
    "Notifications timer" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
     on java.util.TaskQueue@40cf673e
    	at [email protected]/java.lang.Object.wait(Native Method)
    	at [email protected]/java.util.TimerThread.mainLoop(Timer.java:553)
    	at [email protected]/java.util.TimerThread.run(Timer.java:506)
    
    "sonarlint-auto-trigger-r20" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/java.lang.Thread.sleep(Native Method)
    	at org.sonarlint.intellij.trigger.EditorChangeTrigger$EventWatcher.run(EditorChangeTrigger.java:125)
    
    "sonarlint-issue-panel-refresh" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/java.lang.Thread.sleep(Native Method)
    	at org.sonarlint.intellij.ui.CurrentFileController$EventWatcher.run(CurrentFileController.java:121)
    
    "sonarlint-auto-trigger-knowledge-cafe-banner-generator" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/java.lang.Thread.sleep(Native Method)
    	at org.sonarlint.intellij.trigger.EditorChangeTrigger$EventWatcher.run(EditorChangeTrigger.java:125)
    
    "sonarlint-issue-panel-refresh" prio=0 tid=0x0 nid=0x0 waiting on condition
         java.lang.Thread.State: TIMED_WAITING
    
    	at [email protected]/java.lang.Thread.sleep(Native Method)
    	at org.sonarlint.intellij.ui.CurrentFileController$EventWatcher.run(CurrentFileController.java:121)
    
    
    
    opened by nandorholozsnyak 32
  • Add groovy library for JBang Groovy Script automatically

    Add groovy library for JBang Groovy Script automatically

    Now if you create JBang groovy script, and IDEA will ask you to create Groovy library to Groovy Script.

    Adjusting:

    • check groovy library available during JBang groovy script creation
    • if no groovy library found, create default groovy library for Groovy script

    Issues:

    • How to change Groovy library version if Groovy script uses new version with //GROOVY 4.0.0
    • Different Groovy scripts use different groovy version, how to deal with global groovy library? -- Ask developer to use same Groovy version in same project?
    opened by linux-china 11
  • run  overrules standard java debug/run tests

    run overrules standard java debug/run tests

    after installing jbang all my normal java runs are overruled. i.e. when trying to run junit test method it runs it as a jbang instead of normal java.

    should not overrule normal java actions IMO. should be an option.

    opened by maxandersen 10
  • get credentials moved to jbangdev so we can automate publish

    get credentials moved to jbangdev so we can automate publish

    we should get jbang plugin permissions assigned to jbangdev org and setup publishing and announcement similar to everything else.

    @linux-china did you get message back from intellij ?

    opened by maxandersen 7
  • feat: Java version sync retry in case it fails for first

    feat: Java version sync retry in case it fails for first

    • Renaming "jbang" dependency collector to "${module.name}-jbang"
    • Introducing JBangJdkService.kt
    • Notifying user about Java version change

    Related to #44 and #45

    opened by nandorholozsnyak 6
  • External library name is always jbang

    External library name is always jbang

    After the jbang script is being syncronized it has the name jbang for the dependency collector thing, but if a multi module project is being used it could be a bit "annoying", is there any way to append the name of the module as a prefix for the dependency collector?

    Original: image

    Idea: image

    opened by nandorholozsnyak 5
  • jbang script template fails

    jbang script template fails

    dev.jbang.cli.ExitException: Resource not found on class path: jbang-catalog.json
    	at dev.jbang.source.resolvers.ClasspathResourceResolver.getClasspathResource(ClasspathResourceResolver.java:46)
    	at dev.jbang.source.resolvers.ClasspathResourceResolver.resolve(ClasspathResourceResolver.java:31)
    	at dev.jbang.source.resolvers.CombinedResourceResolver.lambda$resolve$0(CombinedResourceResolver.java:26)
    	at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
    	at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
    	at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
    	at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
    	at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
    	at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
    	at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
    	at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
    	at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
    	at dev.jbang.source.resolvers.CombinedResourceResolver.resolve(CombinedResourceResolver.java:28)
    	at dev.jbang.source.ResourceRef.forResource(ResourceRef.java:126)
    	at dev.jbang.catalog.Catalog.getBuiltin(Catalog.java:327)
    	at dev.jbang.intellij.plugins.jbang.actions.JbangTemplatesDialogWrapper.createTemplateComboBox(JbangTemplatesDialogWrapper.kt:34)
    	at dev.jbang.intellij.plugins.jbang.actions.JbangTemplatesDialogWrapper.<init>(JbangTemplatesDialogWrapper.kt:20)
    	at dev.jbang.intellij.plugins.jbang.actions.CreateFromTemplateAction.actionPerformed(CreateFromTemplateAction.kt:15)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.lambda$performActionDumbAwareWithCallbacks$4(ActionUtil.java:244)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.performDumbAwareWithCallbacks(ActionUtil.java:265)
    	at com.intellij.openapi.actionSystem.ex.ActionUtil.performActionDumbAwareWithCallbacks(ActionUtil.java:244)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.lambda$actionPerformed$0(ActionMenuItem.java:300)
    	at com.intellij.openapi.wm.impl.FocusManagerImpl.runOnOwnContext(FocusManagerImpl.java:236)
    	at com.intellij.openapi.wm.impl.IdeFocusManagerImpl.runOnOwnContext(IdeFocusManagerImpl.java:67)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem$ActionTransmitter.actionPerformed(ActionMenuItem.java:292)
    	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.lambda$fireActionPerformed$3(ActionMenuItem.java:131)
    	at com.intellij.openapi.application.TransactionGuardImpl.performUserActivity(TransactionGuardImpl.java:94)
    	at com.intellij.openapi.actionSystem.impl.ActionMenuItem.fireActionPerformed(ActionMenuItem.java:131)
    	at com.intellij.ui.plaf.beg.BegMenuItemUI.doClick(BegMenuItemUI.java:541)
    	at com.intellij.ui.plaf.beg.BegMenuItemUI$MyMouseInputHandler.mouseReleased(BegMenuItemUI.java:571)
    	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6654)
    	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3345)
    	at java.desktop/java.awt.Component.processEvent(Component.java:6419)
    	at java.desktop/java.awt.Container.processEvent(Container.java:2263)
    	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:5029)
    	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2321)
    	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
    	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4918)
    	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4547)
    	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4488)
    	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2307)
    	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2790)
    	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4861)
    	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:778)
    	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
    	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
    	at java.base/java.security.AccessController.doPrivileged(Native Method)
    	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:95)
    	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:751)
    	at java.desktop/java.awt.EventQueue$5.run(EventQueue.java:749)
    	at java.base/java.security.AccessController.doPrivileged(Native Method)
    	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
    	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:748)
    	at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:891)
    	at com.intellij.ide.IdeEventQueue.dispatchMouseEvent(IdeEventQueue.java:820)
    	at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:757)
    	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$6(IdeEventQueue.java:447)
    	at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:818)
    	at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$7(IdeEventQueue.java:446)
    	at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:805)
    	at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:498)
    	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
    	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
    	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
    	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
    	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
    	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
    
    opened by maxandersen 4
  • Running JBang as a Scratch file will not set the Script file attribute properly

    Running JBang as a Scratch file will not set the Script file attribute properly

    Bug description: I really like the IDEA's Scratch feature where devs can make different types of files and if it is a runnable thing, like a Java class than it could be ran as well. When the JBang's shebang directive is configured then the IDEA recognizes it as a JBang script and we can see the shiny JBang icon to run the script, but it could not be run because the newly created Run Configuration's Script file attribute is not set properly.

    image

    Hitting on the JBang icon produces the following output in a console window:

    /home/xxx/.jbang/bin/jbang run Idea2022.2/scratches/JBang/scratch_15.java
    [jbang] [ERROR] Script or alias could not be found or read: 'Idea2022.2/scratches/JBang/scratch_15.java'
    [jbang] Run with --verbose for more details
    

    Opening the Run configuration is not setting the full path to the scratch file: image

    Expected behaviour: Plugin should set the Script file attribute to the absolute path of the scratch file, in my case: /home/xxx/.config/JetBrains/IntelliJIdea2022.2/scratches/JBang/scratch_15.java

    opened by nandorholozsnyak 3
  • move to

    move to "Require a pull request before merging"

    I plan to enable "Require a pull request before merging" o this repo similar to what we have elsewhere.

    This enables collaboration and feedback with all builds passing as doing it on direct commits is just not possible.

    For now I don't add required checks / approvals. Just a pull request so its more visible.

    opened by maxandersen 3
  • //DEPS content assist not working unless I do content assist in a build.gradle first

    //DEPS content assist not working unless I do content assist in a build.gradle first

    I cannot get //DEPS to content assist unless I have used content assist in build.gradle or pom.xml first.

    As if index search not fully enabled without it ?

    opened by maxandersen 3
  • fix: allow experiemental and avoid warning about missing dependency

    fix: allow experiemental and avoid warning about missing dependency

    Automatic build been failing for weeks - this PR tries to improve it by a) add missing dependency declaration in .XML b) make it so experimental API usage does not fail verification.

    Unfortunately this is not enough as gradle runPluginVerifier still reports the following incompatibilities with ic-213 (it works with ic-212):

     #Package 'com.intellij.buildsystem' is not found
     #Package 'org.jetbrains.idea.reposearch' is not found
    

    I do not know why these are set to be not found in IC-213, do you know @linux-china ?

    opened by maxandersen 3
  • Unable to create a JBang script from Intellij

    Unable to create a JBang script from Intellij

    1. Created a new empty project in Intellij IDEA.
    2. Selected the SDK for project: image
    3. Trying to create a new JBang script: image
    4. Getting following message: image

    IntelliJ IDEA 2022.1.4 (Ultimate Edition) Build #IU-221.6008.13, built on July 19, 2022

    Local Java version (probably irrelevant):

    ➜  ~ java --version
    openjdk 17.0.4.1 2022-08-12
    OpenJDK Runtime Environment Temurin-17.0.4.1+1 (build 17.0.4.1+1)
    OpenJDK 64-Bit Server VM Temurin-17.0.4.1+1 (build 17.0.4.1+1, mixed mode, sharing)
    
    opened by maciejwalkowiak 3
  • cannot create jbang script in intellij idea

    cannot create jbang script in intellij idea

    I installed jbang with sdk man, by default it is installed in ~/.sdkman/candidates/jbang/current

    Than i installed jbang intellij idea plugin. I tried both community v2022.2.2 and ultimate v2022.2.1

    Whenever i try to do file -> new -> jbang script, i get this error: Could not execute [~/.jbang/bin/jbang, template, list] with environment {NO_COLOR=true}. Error=2, No such file or directory

    Note: my jbang installation is working fine, i can run jbang files from command line.

    in vscode there an option to set as jbang home, probably that kind of setting would be required. Could you please check.

    opened by AdityaPadhy 10
  • use private artifactory to sync deps to module

    use private artifactory to sync deps to module

    Hi jbang members,

    I've use jbang plugin for a while and cannot see any change I can configure private repo (artifactory with username and password) to sync //DEPS to module. The workaround I have right now is having a dummy project with proper maven // gradle settings to download libs to local repository than jbang idea plugin will pick them up from there.

    Is there any change we can configure such behavior?

    Regards, Travis

    opened by Travisnv 3
  • Show more options for //DEPS assist

    Show more options for //DEPS assist

    I'm not sure what the current filters are for the //DEPS assist, but if you have a line like:

    //DEPS org.slf4j:slf4j-simple:
    

    And hit Alt+Space at the end of that line it only seems to show the very latest version. I can understand that showing all versions might result in very long lists for some artifacts, but perhaps we can show the last 10-20 ones at least?

    enhancement 
    opened by quintesse 1
  • //DEPS content assist only works on first item

    //DEPS content assist only works on first item

    When you have a line like

    //DEPS io.javalin:javalin:4.4.0 org.slf4j:slf4j-simple:1.7.36
    

    And you put your cursor after org.slf4j:slf4j-simple:" and hit Ctrl+Space it shows suggestions for "io.javalin:javalin:", not "org.slf4j:slf4j-simple:".

    bug 
    opened by quintesse 2
Releases(v0.23.1)
Owner
jbang - unleash the power of Java
run, build and package scripts and applications
jbang - unleash the power of Java
K6-intellij-plugin - IntelliJ-based Plugin to run k6 tests locally or in the k6 Cloud from your IntelliJ IDE

IntelliJ-based Plugin to run k6 tests locally or in the k6 Cloud from your Intel

Mikhail Bolotov 8 Jan 2, 2023
Intellij-platform-plugin-template - IntelliJ Platform Plugin Template

IntelliJ Platform Plugin Template TL;DR: Click the Use this template button and

null 0 Jan 1, 2022
A plugin for Android Studio and Intellij IDEA that speeds up your day to day android development.

ADB Idea A plugin for Android Studio and Intellij IDEA that speeds up your day to day android development. The following commands are provided: Uninst

Philippe Breault 2k Dec 28, 2022
IntelliJ IDEA / PhpStorm InertiaJS Plugin

PhpStorm and IntelliJ IDEA Inertia.js Plugin Provides support in PhpStorm and IntelliJ IDEA Ultimate for Inertia.js. ?? GitHub Issues: feature request

Matthew Hailwood 16 Dec 18, 2022
Intellij Idea Plugin that can convert HTML to Compose for Web code.

HtmlToComposeWebConverter Intellij Idea Plugin that can convert HTML to Compose for Web code. Turn this: Into this: Show some ❤️ and star the repo to

Jens Klingenberg 90 Oct 10, 2022
An IntelliJ IDEA plugin is used to inspire you to write code.

InspireWritingPlugin An IntelliJ IDEA plugin is used to inspire you to write code. Whenever you write code that exceeds the specified character, the p

Airsaid 6 Feb 11, 2021
Idea-plpgdebugger - A plugin to debug PostgreSQL in Intellij

Intellij PL/pg SQL debugger Debug PL/pg SQL in Intellij with Datbase Tool to spe

Alexandre Boyer 24 Dec 30, 2022
A Mindustry modding Intellij IDEA plugin, named Plumy.

mgppi Template ToDo list Create a new IntelliJ Platform Plugin Template project. Get familiar with the template documentation. Verify the pluginGroup,

Plumy Games 2 Jul 24, 2022
Kirill Rakhman 4 Sep 15, 2022
eventbus-intellij-plugin 3.8 0.0 L1 Java Plugin to navigate between events posted by EventBus.

eventbus-intellij-plugin Plugin to navigate between events posted by EventBus. Post to onEvent and onEvent to Post Install There are two ways. Prefere

Shinnosuke Kugimiya 315 Aug 8, 2022
IDEA plugin.

#Code Review Plugin Download 团队之间Code Review(Diff) 工具 集成 Trello Get Start 配置Task 插件依赖IDEA task 插件的server信息 Perferences -> Tools -> Tasks -> server 添加T

hxc 4 Dec 11, 2021
IDEA plugin demo.

idea-plugin-demo Template ToDo list Create a new IntelliJ Platform Plugin Template project. Get known with the template documentation. Verify the plug

YISEN CAI 0 Nov 3, 2021
🌏 Android/IDEA localization plugin. supports multiple languages and multiple translators.

English | 简体中文 AndroidLocalizePlugin ?? Android/IDEA localization plugin. supports multiple languages and multiple translators. Features Multiple tran

Airsaid 465 Dec 28, 2022
This is an IDEA plugin that allows you to connect Android devices via WiFi for debugging your codes.

AdbWifiUtils Github | Issues | README | 中文文档 ● [Description]: This is an IDEA plugin that allows you to connect Android devices via WiFi for debugging

AWeiLoveAndroid 3 Sep 19, 2022
AsyncAPI - IDEA plugin

AsyncAPI - IDEA plugin ⚠️ This plugin doesn't support AsyncAPI 1.x Idea plugin for the java-asyncapi - Helps to edit and validate AsyncAPI schemas. Fe

AsyncAPI Initiative 5 Dec 27, 2022
IntelliJ Plugin for Android Parcelable boilerplate code generation.

IntelliJ/Android Studio Plugin for Android Parcelable boilerplate code generation This tool generates an Android Parcelable implementation based on fi

Michał Charmas 2.1k Dec 27, 2022
IntelliJ / Android Studio plugin for Android Holo Colors

This project is not maintained anymore. Holo Colors doesn't make sense since the introduction of Material Design and the ability to set the primary co

Jérôme Van Der Linden 644 Nov 10, 2022
Android Studio & IntelliJ Plugin for sort xml by name="xxx".

AndroidXmlSorter Android Studio & IntelliJ Plugin for sort xml by name="xxx". Options Insert space between difference prefix ('Snake Case', 'Camel Cas

Kaoru Tsutsumishita 102 Nov 29, 2022
IntelliJ plugin that provides some useful utilities to support the daily work with Gradle.

IntelliJ Gradle Utilities Plugin This IntelliJ plugin provides some useful utilities to support the daily work with Gradle. It's available on the offi

Marcel Kliemannel 6 Jul 29, 2022