After dart update, Intellij IDEA still with past version - intellij-idea

I had Dart 2.1 v, then i update with
brew upgrade dart
After that i can check dart version:
brew info dart
Everything its fine, now is 2.7 v. But when i want to create a new project on IntelliJ IDEA still with 2.1v, i know i need to change, but on preference options "languages & Frameworks" Dart is not there.

You don't have to/can not change the Dart version for new projects in IntelliJ settings. Just be sure to use the correct Dart SDK path (e.g. the SDK that you have updated to 2.7) when creating a new project.
In pubspec.yaml you can see that the Dart version is >= 2.0.0 && < 3.0.0, so the project always uses the Dart version of the specified SDK. Thus your projects will always use the latest version of Dart 2.x. All minor updates within version 2.x are backward compatible, so there is no problem to always use the latest version.

Related

How to use javaparser plugin of JQAssistant?

I'm trying to use javaparser plugin of JQAssistant using command line. I have done the following:
Copied "jqassistant.plugin.javaparser-1.8.0.jar" to "plugin" folder.
I also noticed plugin has runtime dependency to "com.github.javaparser:javaparser-core:3.6.25". So I copied "javaparser-core-3.6.25.jar" to plugin folder too.
But when I try to scan a Java file I get the following error:
"ANTLR Tool version 4.9.2 used for code generation does not match the current runtime version 4.7.2"
The ANTLR version bundled with JQAssistant is 4.9.2 but plugin is expecting older version 4.7.2.
Has anyone been able to use javaparser plugin?
Some plugins (not only javaparser) indeed depend on JARs bundled with jQAssistant. Sometimes there are version conflicts, that's why it can only be guaranteed that Kontext E plugins with a certain version (let's say 1.8.x) are compatible with jQAssistant with the same major and minor version (so jQA 1.8 in this case). If you use javaparser 1.8.0 with jQAssistant 1.8.0 (which comes with org.antlr-antlr4-runtime-4.7.2), it works.

How do intellij.version and sinceBuild (untilBuild) relate to each other?

I have version in intellij block in build.gradle.kts:
intellij {
version.set("2021.2.1")
type.set("IC")
plugins.set(listOf("android"))
}
and patchPluginXml:
patchPluginXml {
sinceBuild.set("212")
untilBuild.set("223.*")
}
here sinceBuild is set accordingly to intellij.version. but is this correct? which relations should have this properties? can I set sinceBuild lower than intellij.version?
The version in the intellij block is the version (number) of IntelliJ gradle will use to build the plugin.
As a result, this is also the IntelliJ version used for the sandbox IDE when you run gradle runIde.
The sinceBuild and untilBuild are the version numbers that specify the range of IntelliJ versions the plugin (build with version) supports.
You basically give users a guarantee that your plugin works with any IntelliJ version within this range.
When you upload a plugin to the market place, your plugin will be verified against all these versions by the IntelliJ Plugin Verifier.
You can also do this yourself with the runPluginVerifier task.
So, yes, you can set sinceBuild lower than version and probably should.
More often than not you want to test and build for the newest release while still supporting a few older versions.
With your current settings (version is 2021.2.1, sinceBuild is 212, and untilBuild is 223.*), your plugin will be built with 2021.2.1 and you promise users that your plugin will work with any IntelliJ version from 2021.2.1 until 2022.3.*.
When anyone tries to install your plugin with an IntelliJ older or newer than the specified range they will get a message saying that your plugin is not compatible with their IntelliJ version.

How to switch between multiple versions of Kotlin?

I need to provide maintenance support for the "legacy" mobile App, while also providing enhanced feature support to the "next major version" of this mobile App. To do it efficiently, I need to be able to switch between 1.3.x and 1.4.x of the Kotlin compiler. Everything that I am reading, implies that Kotlin only moves forward, so I hesitate to upgrade my version of Kotlin in Android Studio to get 1.4.x plugin installed without the confidence that I can switch back to 1.3.x.
It looks like a simple change in the Gradle build scripts should work, but it is not clear that changing the version changes all of the toolset, or simply tries to be backward compatible from a future-looking configuration.
You can update the Android Studio plugin safely - it should be backward compatible with the older versions of Kotlin.
If you want to change the compiler version (for using new language features), you should update the version in the Gradle script - you can change it whenever you want, the older versions of Kotlin libs and compiler are still available in the repositories.
I recommend you to always update Android Studio plugin to the latest version, so you have full Kotlin support in your IDE for all versions of the Kotlin compiler.

Custom Intellij plugin not working in older version from the version its created on

I have created a Intellij idea plugin with java and gradle by using intelli idea 2020.2.2 and its working fine in intellij 2020.2.2 and its higher version but while i am trying to use it in older versions like 2020.1.X or other older version its not working show "Incompatible with this installation" issue.
I want to use this custom plugin also with older verion.enter image description here

Cant build libgdx project

I got the error that states "Unsupported class file major version 57" while trying to build LibGdx project, along with few other notifications. Same happens when trying to build using IntelliJ idea.
I have no idea how to fix that.
"Unsupported class file major version 57" means your version of Java is incompatible with the one with which Gradle was compiled. You have to make sure that the Java version you are using is compatible to the Gradle version you are using. I guess you have either to downgrade your Java version or upgrade the Gradle version.