When I want to add onesignal to flutter, I get the following error. How can I solve it?
PROBLEM PHOTO
You'll get this error if you try run a command from outside the root of your flutter project folder. Simply type pwd in your project terminal, and the command will output the full path of your working directory. In VSCode, you can quickly access the project root folder terminal by right clicking the folder then "open in integrated terminal".
I was seeing this situation and i noticed i deleted my pubspec.yaml
I just tried to execute Flutter: New Project, but it shows an error that could not find a flutter SDK.
I've ensured to complete all of the requirements from the flutter doctor.
Is there any way to solve this problem?
Thanks.
On macOS this was solved by following these steps.
First find where you downloaded the flutter sdk (Can be downloaded from here). It should be in your downloads folder unless you selected somewhere else.
Next:
Open up Terminal. Run the following command: sudo nano /etc/paths
Enter your password, when prompted.
Go to the bottom of the file, and enter the path you wish to add.
Hit control-x to quit.
Enter “Y” to save the modified buffer.
If the sdk is downloaded into your Downloads folder, your path to add should be /Users/yourusername/Downloads/flutter/bin
Lastly, quit and restart your terminal windows and VS Code. After restarting, both apps should recognize flutter and running flutter doctor should now work.
If you installed Flutter extension please restart VS_CODE and try it again. I already had the same problem.
The thing is VSCode looks for .packages file in your Flutter project this file contains path to your Flutter SDK & some other metadata. You're getting this error because either the .packages file is missing or either the path to Flutter SDK in .packages file contains some discrepancies.
To resolve it, you can;
Either edit the .packages file & set the path.
Or if you already have a working Flutter project then a .packages must've been already created. Copy that file & paste it in the root directory of your project.
Restart VSCode & run flutter pub get
This should resolve the issue.
Check your environment variables:
Look for the PATH if it exists append the full path to flutter\bin
using ; as a separator from existing values.
If it does not exist, create a new user variable named PATH with the
full path to flutter\bin as its value.
And check the installation guide
After doing this:
Open VS Code.
Press Ctrl + Shift + P.
Then type flutter and select run flutter doctor it should be fixed now.
Create a new project to make sure it's run.
For Linux Users
For future visitors :)
I had the same problem, in my Terminal flutter doctor or in general flutter was recognized, but VSCode couldn't recognize my SDK location so flutter doctor for instance didn't work.
The first thing to do is to follow the steps in flutter documentation: Flutter Doc
If it didn't work, change the environment variables directly.
sudo nano /etc/environment
Now add the location of the bin folder of your flutter SDK, The folder that you downloaded from here.
For example, you extracted it here: /Home/User/Software
Add /Home/User/Software/flutter/bin to the PATH variable. Paths are separated by a colon(:)
After a few solutions I tried, this one worked.
For Windows
Open Visual Studio Code
Click Locate SDK
Find your flutter folder
Click Save
Re-open your Visual Studio Code
Press Ctrl + Shift + P
Type flutter and choose Flutter: New Application Project
Type your project name (e.g: flutter_application_1)
Select a folder to create the project in
If you want to change your flutter sdk location
Go to Visual Studio Code > Manage > Setting (or with shortcut Ctrl
Search dart
Find [dart] configure setting to be overriden for [dart] language
Click Edit in settings.json
You'll see :
{
"dart.sdkPath": "C:\\tools\\dart-sdk",
"dart.flutterSdkPath": "C:\\tools\\flutter",
"[dart]": {
"editor.tabSize": 2,
"editor.insertSpaces": true,
"editor.detectIndentation": false,
"editor.suggest.insertMode": "replace"
}
}
Replace dart.sdkPath and dart.flutterSdkPath with your new sdk location
Installing Flutter on Linux is a breeze using snapd as is documented officially. But then trying to create a Flutter project by following the official steps as mentioned here - Test drive - Flutter will throw an error similar to the description provided in the question.
On a side note though, you don't have to bother adding Flutter to PATH if it was installed using snapd.
Rather, follow these steps:
flutter create <insert_app_folder_name>
cd <insert_app_folder_name>
code .
What it really does is:
The Flutter binary is called from within snapd & creates a project with a directory name you provide.
You can now cd into that specific directory.
Call VSCode in the current directory which opens a VSCode instance within the project directory.
Refer to the answer by #maheshmnj about the .package. This file was created by Flutter earlier if you followed the aforementioned steps.
This means the Flutter extension couldn't find the Flutter SDK automatically (eg. by looking in your PATH or a path configured with dart.flutterSdkPath). Clicking Locate SDK should let you browse to the SDK manually and record that location for the next time. If you see this again after restarting, that's definitely a bug in the Dart/Flutter extension, so please open an issue at https://github.com/Dart-Code/Dart-Code and include the output from clicking the Show Log button, as well as noting whether there's a dart.flutterSdkPath setting in your VS Code User Settings.
If you have just installed the flutter extension, close all the vs code applications running and restart the vs code then it will work as expected.
In order to run a new flutter project,
Go to vs code-> View tab -> command pallette -> select Flutter ->
give a name to the project ->give the path of the project
Now you are good to go with flutter.
I would like to complete NoobN3rd information.
In VSCode Linux I used this steps:
sudo nano /etc/environment
Type your password
I added 3 paths at the end of line:
3.1 /"flutter instalation directory"/flutter/bin
3.2 /"flutter instalation directory"/flutter/packages
3.3 /"flutter instalation directory"/flutter/dev
Save it and reboot your system
Look at my environment file to have an example:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/paulo/development/flutter/bin:/home/paulo/development/flutter/packages:/home/paulo/development/flutter/dev"
if youknow where have you extracted your zip file of dart(Eg. at the time of extraction i setup the path C:\src\flutter)
then in vs code goto
c drive
-src
-flutter
-bin
-cache
-(dart-sdk)
select this folder and your
vs code will be adjusted.
I was facing the same problem. I've initially followed all the steps provided by installation guide of Flutter and was able to run an existing project using flutter run command.
So I've tried again repeating the very same steps of the installation guide and changed the path that I initially set like:
export PATH="$PATH:~/path/to/flutter/bin"
For one like:
export PATH="$PATH:/home/user/path/to/flutter/bin"
Then I run source ~/.bashrc and restarted Visual Code and worked! so I suppose that it was something related to ~ in the path.
I would like to add a complementary and alternative response to the Linux solutions given by NoobN3rd, Traufvihal and Paulo Ravaiano.
I'm using Manjaro and for some reason my Visual Studio Code was not picking up all the environment variables definition. I tried all the solutions and finally I realised the problem was not with the variables definition (my final solution contains them all in ~/.bashrc but it should work with /etc/environment as well) but on how Visual Studio Code was launched.
In case someone else is facing this problem, I noticed that running VS Code from the applications menu fails to link the environment variables for some reason. On the other hand, launching "code-oss" from the terminal does the trick and picks all my variables defined in my ~/.bashrc file.
Hope it helps!
I just got out of the same trouble, after numerous hit and trials trying to run flutter commands from vs code terminal the below set of steps got the things up for me.
In Ubuntu 18.04
Grab the path of the directory where flutter was unpacked by you.Mine was in the Home directory for the root user. Location can be any of your choice.
Go to the Home for your root user
Un-hide all of the hidden files in this directory.
Look for .bashrc file. Do not look for .profile file.
Open .bashrc file using nano/vim/text editor which ever you like.
Scroll to the bottom of the file and add this line -
export PATH="$PATH:pwd/flutter_linux/flutter/bin"
Quit all instances of the vscode (if any) opened.
Re-open and in the terminal type which flutter
Here -
I had re-named the un-zipped folder name like "flutter_linux_v1.12.13+hotfix.9-stable" with "flutter_linux"
Hope this helps......
i was also facing this error, after putting the flutter sdk path at the End of the PATH variable(not in middle or start) it works fine for me
For those who want to change their Flutter SDK path for the Dart & Flutter plugin
Click on Manage Icon(on Mac)
Click on Settings
On the Settings page, Click on Dart & Flutter.
Look for Dart: Sdk Path, click on Edit in settings.json
Edit dart.flutterSdkPath to your VSCode Flutter path
For me non of the answers helped.
What helped was (on macOS) opening the .bash_profile file via
sudo nano .bash_profile
and change the path to where my Flutter was as this has changed. Or add this line export PATH="$PATH:/home/user/path/to/flutter/bin"
hope this helpes.
QUICK SOLUTION!: If on macOS, PLUS everything had been working flawlessly previously, and this happens all of a sudden, or periodically, here is what I eventually discovered...
If your mac restarted, either on its own due to a crash, freeze or overnight install of updates, and VS Code was running, it generally restores all your vscode instances, but with various environment-related errors such as this one. The reason is that you are not running in the context of a shell and you don't have access to those environment settings. See this article from the VS Code documentation.
THE SOLUTION?: Quit and restart VS code as you normally would. Others have mentioned this, but I thought it would be good to know why this happens so you aren't surprised next time.
Please refer to the Get Flutter SDK section and locate where you have installed your flutter\bin folder. In my case, I put the flutter bin in my Documents folder.
See the following image Flutter\bin location
Windows
After make sure right Flutter version is in your path: https://docs.flutter.dev/get-started/install/windows
and you can run flutter doctor successfully
in VS Code you need to go to File->Preferences->Settings (or Ctrl+,)
then search for dart.flutterSdkPath then click on "Edit in settings.json" make sure it is the right path there.
I had the same problem, the solution was:
take the folder where you have extracted your zip file (for example: C:\src\flutter\flutter) then put it in the environment variable path and restart vscode.
My Flutter IDE (Android Studio) doesn't recognize material.dart anymore! It happened suddenly, I was working normally then my PC turned off because of CPU 100% consumption and when I restarted I found this problem.
ctrl -> Shift -> A (Find Action)
Search for "Dart Analysis"
Click the icon that says "Restart the Dart Analysis server"
The red underline disappears from the package import and everything works.
I tried this solution and it worked just perfect:
open terminal from the project directory
and run
flutter packages get
Flutter Issue Fix: 18-April-2020
It happened due to :
You have created a project and then you try to push the code to Git ( and keeping your vscode open)
Your package needs to update using command flutter packages get ( simply from vscode menu choose terminal and then run this command )
If you still it didn't fix your issue, simply go to File Menu, choose Close Folder, it fixes your issue.
Last option restart VSCode.
Solution that worked for me: inside your pubspec.yaml file, make sure that the name field (it's the first line of your pubspec.yaml file) has the correct name of the project. If it doesn't, change it and run pub get.
Check bupspec.yaml file. Something may be removed from there. I had the same issue and found out this problem and it's fixed now.
Taking a look into Flutters Github Issues there can be many causes.
Your git causes this error (issue 19384)
Just delete every entry in your projects .gitignore on your maschine.
There are some missing flutter packages (issue 17016)
Even when you've just installed flutter yet it can occur that some packages are going to be missed.
Going to the root of your Flutter project via command prompt and typing the command flutter packages get will fix this.
I only re-save my old file. Then restart VSCode.
I had to delete flutter folder and reinstall it from scratch...
Add the following to the pubspec.yaml
environment:
sdk: '>=2.10.0 <3.0.0'
and then run
flutter pub get.
For me, I needed to remove : colons from the app description in the pubspec.yaml file, and run
flutter packages get
This can also happen if you delete manually delete flutter package from Dart packages. The solution in this case is to reinstall flutter SDK by erasing current User/flutter folder and downloading a new one. Then run flutter packages get and you should see all dependencies in place.
I tried to follow Get Stated here https://flutter.io/setup-windows/
And got
>flutter run
Error: No pubspec.yaml file found.
This command should be run from the root of your Flutter project.
Do not run this command from the root of your git clone of Flutter.
How to fix?
You are not in the current working directory. Change the directory to your project directory and then run >>flutter run so that it could find pubspec.yaml.
Download the zip file (Assuming you have already done this)
Extract this zip to a safe place say "E://flutter/"
Open CMD and goto your workspace folder where to usually create your projects.
Run command flutter create <project_name>
cd <project_name>
Run command flutter run
Alternatively, you can always use a good IDE like Intellij or Android Studio which will automate such configs like #Rechard said.
If you are trying to run any command in terminal and getting error of pubspec.ymal not found then Close that session of terminal that you are currently using and open a new one...
I've also faced with this problem recently. I researched it a little bit and actually there is no particular solution for that problem.
But the way I solved it was:
1) Forget about the file which gives the error.
2) Create a new one like how you've created before.
3) After that call the flutter run thing again. It should work as it worked for me.
For me i just went to the terminal, cd to the directory where you want to get the dependencies and just run 'flutter pub get'.
Try pressing Ctrl+Shift+T to open new session.