Itoun
Itoun

Reputation: 3227

update dart sdk for flutter

I would like to use dart SDK >= 2.2.0 with flutter. But my current version used BY Flutter is 2.1.2

flutter --version
Flutter 1.2.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 8661d8aecd (2 months ago) • 2019-02-14 19:19:53 -0800
Engine • revision 3757390fa4
Tools • Dart 2.1.2 (build 2.1.2-dev.0.0 0a7dcf17eb)

I tried to install the 2.2.0 version independently and I succeed :

dart --version
Dart VM version: 2.2.0 (Tue Feb 26 15:04:32 2019 +0100) on "macos_x64"

However, Flutter doesn't use this version as you can see above. I tried to replace files of the dart-sdk used by flutter (flutter/bin/cache/dart-sdk) by the version that I installed independently, but when I try to run Flutter after that I have a snapshot problem so I have put back the original dart-sdk folder in the flutter directory.

Do you have any ideas how can I update it?

PS: I downloaded flutter very recently (10 days ago) from here: https://flutter.dev/docs/get-started/install/macos

Upvotes: 169

Views: 415109

Answers (21)

Adnan Bashir
Adnan Bashir

Reputation: 763

Open terminal commands to Upgrade Flutter – Dart SDK
1-> C:\flutter 
2->run command  " flutter channel master "
3->run command after switching " flutter upgrade "

enter image description here Now open android studio which automatically fetch updated sdk from flutter folder

note: read about it and decide if you wanna be on the master channel: https://github.com/flutter/flutter/wiki/Flutter-build-release-channels

Upvotes: 5

Karthik SWOT
Karthik SWOT

Reputation: 1217

you can do this with the following command

flutter upgrade

If you face any issues, do this instead

flutter upgrade --force

Upvotes: 0

Valeriy Golyshev
Valeriy Golyshev

Reputation: 21

Try to delete your separate dart-sdk path from environment variable (the path outside flutter folder). Because of two paths VSCode use older dart version. And don't forget to reload IDE and terminal. Worked for me on Windows.

Upvotes: 0

Sripathi Yadav
Sripathi Yadav

Reputation: 1

First change the Flutter to stable by flutter channel stable then try upgrading the flutter by flutter upgrade

It worked... just give it a try.

Upvotes: 0

Moftah
Moftah

Reputation: 179

Sometimes using "brew update dart" not working. If so you can go to the dart sdk path "/flutter/bin/cache/dart-sdk" and then remove dart-sdk and install a new stable version the paste it there. you can check the new verion by writing "dart --version" on terminal.

Upvotes: 0

Sonu Saini
Sonu Saini

Reputation: 2064

follow some command given below :

1.flutter --version -> give all the flutter version list available.

2.flutter version v1.12.13+hotfix.7 -> you can switch to any given flutter version
in your console by 1st command.

Upvotes: 2

iamJohnvesly
iamJohnvesly

Reputation: 945

Run flutter upgrade on your Terminal and it will automatically update the dart SDK and flutter version

Upvotes: 10

Hisham Shami
Hisham Shami

Reputation: 467

it is so simple if dart was installed with flutter just do the below line:

flutter upgrade

Upvotes: 8

Hani
Hani

Reputation: 151

You might need to Update your pubspec.yaml depending on the flutter channel you want to work on:

If you are on stable channel :

Go into pubspec.yaml and type in:

environment:
  sdk: ">=2.2.0 <3.0.0"

(Whatever Dart SDK version you want comes in the front)

dependencies:
  cupertino_icons: ^1.0.0

If you are on beta channel :

environment:
      sdk: ">=2.12.0 <3.0.0"

dependencies:
  cupertino_icons: ^1.0.1

Then if you are on stable channel (or beta), open the terminal in your IDE and enter

flutter channel stable
# or flutter channel beta
flutter upgrade
flutter pub get

Check the version with flutter --version

Hope it helps.

Upvotes: 13

Valentin Vignal
Valentin Vignal

Reputation: 8258

The dark SDK that you updated is probably the one on your global dart installation.

Check your flutter dart path with the command

which flutter dart

If it is looking like this

[/path-to-flutter-sdk]/bin/flutter
/usr/local/bin/dart

you need to change it to use the one associated to flutter:

[/path-to-flutter-sdk]/bin/flutter
[/path-to-flutter-sdk]/bin/dart

To update it, you need to update your $PATH so [/path-to-flutter-sdk]/bin/flutter comes before /usr/local/bin.


Upvotes: 2

arjava
arjava

Reputation: 1899

I'm using flutter upgrade channel stable on macOS and it's working fine

Upvotes: 1

Anandh Krishnan
Anandh Krishnan

Reputation: 6022

Try this

flutter channel stable
flutter upgrade

or this

flutter channel master
flutter upgrade

Upvotes: 4

adarsh
adarsh

Reputation: 531

if you using android studio, Tools->Flutter->Flutter upgrade click on flutter upgrade then you can install it

Upvotes: 3

Lennert
Lennert

Reputation: 955

If you struggle to make any of these solutions work, you might have different versions of flutter on your system.

I checked my version on the command line and upgraded via 'flutter upgrade' to the latest stable release, which did not solve the problem in IntelliJ / Android Studio, as that pointed to another local version of flutter.

To check, run 'which flutter' on the command line and check with the version displayed in "Preferences --> Languages & Frameworks --> Flutter" and make sure they point at the same flutter installation.

Upvotes: 0

M Karimi
M Karimi

Reputation: 3573

You can upgrade dart SDK using terminal by typing flutter upgrade. This will upgrade both flutter and dart SDK. Actually flutter upgrade includes the Flutter and Dart SDK and doesn't install them separately.

Upvotes: 4

John Oyekanmi
John Oyekanmi

Reputation: 386

Yeah, the cause of the problem is inherent in the fact that Flutter does not use the dart present on your Local machine the Flutter sdk instead comes with the latest compatible dart sdk shipped along with it.

When you run the command flutter version it prints the current flutter version and the current dart-sdk version shipped along with it. If you wish to use a later version of the dart sdk you'll have to upgrade your flutter sdk and if the specific dart-sdk version you want is not yet available for any branch in the stable channel I will suggest you switch to the master or dev channel and hopefully the latest release of those channels will support the required sdk constraint you need. But beware other branches aside the stable branch are not totally safe as you can encounter strange and unresolved errors so have that at the back of your mind.

Upvotes: 1

Ali Azimoshan
Ali Azimoshan

Reputation: 1361

This issue is because of the dart version and by updating flutter the dart version won't update, the way for solving this is, first, you need to be on the dev or master channel,

flutter channel master
flutter upgrade

after that run flutter doctor -v as you see your dart is still an old one

in this step, you should update it manually, as the doc says Dart

for Windows user

choco upgrade dart-sdk

for Mac users if you user brew to install dart

brew upgrade dart

and if you don't, you can install it

 brew tap dart-lang/dart
 brew install dart

wish this solves your issue.

Upvotes: 79

RaSha
RaSha

Reputation: 1482

I have two version of flutter SDK at the same time for two different flutter projects. I had changed the current SDK to 1.12 so it was complaining about dart SDK version. I changed the current version to 1.20 and the problem solved.

Upvotes: 0

amrit
amrit

Reputation: 123

If using windows, you can use chocolatey to upgrade sdk by using command.

choco upgrade dart-sdk

If you want the latest pre-release version:

choco upgrade dart-sdk --pre

Upvotes: 2

İbrahim DOLAPCİ
İbrahim DOLAPCİ

Reputation: 1049

You have to upgrade flutter from cli with flutter upgrade command. Then flutter will use latest version of Dart SDK. Flutter does not use your local Dart Sdk.

Upvotes: 104

flarkmarup
flarkmarup

Reputation: 5439

It might be due to the fact you are on channel stable which is the most secure builds of the four channels to get updated (channels are listed here)

If you are a bit more curious to try out the new features without having to risk bad builds I advocate channel beta:

Every month, we pick the "best" dev build of the previous month or so, and promote it to beta. These builds have been tested with our codelabs.

where the stable channel has this description:

When we believe we have a particularly good build, we promote it to the stable channel. We intend to do this more or less every quarter, but this may vary. We recommend that you use this channel for all production app releases. We may ship hotfixes to the stable channel for high-priority bugs, although our intent is to do this rarely.

You can change the channel to point at beta by running this command in your terminal: flutter channel beta followed by flutter upgrade to ensure you have got the last release for this particular branch.

Let me know how this affect your situation.

Upvotes: 72

Related Questions