Using Rider under Windows without Visual Studio: prerequisites Follow
- If you have JetBrains Rider installed on your Windows machine and there is also .NET Core SDK or Visual Studio installed, we expect JetBrains Rider to start working without taking any further configuration steps. Please note that when you use VisualStudio, installing some components within it may be required (ASP.NET or F# targets).
- If you want to use JetBrains Rider on a copy of Windows that does not have Visual Studio installed and you are developing projects having legacy project files:
- Download and install the JetBrains redistributable of MSBuild (to learn more, please visit the blog post.)
- Download and install Microsoft .NET Framework Developer Pack 4.5.1 or later from this list: https://www.microsoft.com/net/targeting.
- If you are interested in developing Web applications for classic ASP.NET, or .NET Core with IIS Express deployment, download and install IIS Express: https://www.microsoft.com/en-us/download/details.aspx?id=48264.
- If you are interested in developing .NET Core with IIS Express deployment, follow the documentation on setting up ASP.NET Core apps in IIS Express: https://www.jetbrains.com/help/rider/Running_IISExpress.html.
NOTE: this is not required for ASP.NET Core if you use the Kestrel server (one of the default options for modern ASP.NET Core apps.)
- If you are interested in developing non-SDK FSharp applications (projects with the legacy project files):
- Add NuGet https://www.nuget.org/packages/FSharp.Compiler.Tools to your project (changing TargetFrameworkVersion may be required).
- In some cases, installing F# targets via Visual Studio or VS Build Tools may be more preferable than using this package.
Please sign in to leave a comment.
When can we expect support for .NET Framework versions later than 4.5.1? Seeing as 4.5.1 has been out of support for a full year now, it'd be awesome to see Rider support, say, 4.6 or 4.6.1.
What about using Mono with Windows, how can i choose between using .NET and Mono?
Can´t find any option in my project that i want to run/build in both frameworks.
Aapo, I have updated the instructions to reflect that any Developer Pack from the list at https://www.microsoft.com/net/targeting will do.
1. Set valid "mono root folder path" in Settings
2. For both Run and Debug configurations there must appear a checkbox "use mono runtime"
Also related https://youtrack.jetbrains.com/issue/RIDER-3778
I follow the installation instruction and I got the error:
"Cannot load the project with the current MSBuild toolset. Please ensure MSBuild 15.0 is installed."
After that, I installed Microsoft Build Tools 2017 with MSBuild 15 and I still got this error.
When I installed Visual Studio the error gone.
Is it a bug or I'm doing something wrong? I'm using Windows 10, .NET Core 1.0.1 SDK
I'm using Windows 10, .NET Core 1.0.1 SDK, .NET Core 1.1.1 Runtime, .NET Framework 4.6 and above.
Latest .NET Core 1.1 requires Workload ".NET Cross Platform development" from Visual Studio installation. We hope to remove this limitation soon.
Microsoft Build Tools 2015 link is dead, I believe it should be replaced by this one? https://www.visualstudio.com/downloads/#d-build-tools
(Under "Other Tools and Frameworks" > Build Tools for Visual Studio 2017)
Thanks Jackson, the link is now updated.
Regarding Step 5: The link seems to be down and I can't find any similarly named repository on GitHub either.
@Benjamin, Sorry I put a link to private repository. Copied info directly here.
@Ivan, thanks that put me on the right track! However with just the Microsoft Build Tools 2015 (I don't have Visual Studio installed at the moment) I couldn't get it to work; it always failed with a "The target "build" could not be found in the project..." error message. Installing the Build Tools for Visual Studio 2017 (1) and selecting F#-Support during the installation fixed that for me.
As you can see I don't have a Visual Studio 2017 IDE installed.
Here's what I needed to set to get Rider to recognize a .NET framework and to build applications.
If I try to select any other .NET SDK or targeting pack I can't build using Rider.
Rider needs .NET 4.5 to work. Given this these instructions don't see correct.
@S07h0sxxef Currently Rider default project templates have TargetFrameworkVersion =4.5 in csproj without checking what frameworks are installed.
However you can changeTargetFrameworkVersion to other value corresponding to TargetFramework installed on your machine.
I don't see any easy way to do this.
For a test I added 4.5.1
After doing that I would expect there to be an easy way in Rider to choose either 4.5 or 4.5.1 for this project. I still only see 4.5. Why?
While installing Microsoft Build Tools 2017 I saw license link.
Do I understand correctly that "Microsoft Build Tools 2017" can't be used for commercial development without a VS 2017 license?
Do you have suggestions on how to use the Rider for commercial development under Windows without buying VS 2017?
BTW, MSBuild is under MIT license. Will Rider work with custom MSBuild on Windows? And if so, is it legal?
Good catch! We'll look into Microsoft Build Tools licensing more closely, and we'll modify the requirements if we can confirm there's an issue. The underlying MSBuild is under MIT.
"If you have installed Project Rider on a Windows machine that has an existing Visual Studio installation, we expect Project Rider to start working without taking any further configuration steps."
Well, it doesn't. I am demoing Rider and so far the impression isn't very good :(
I have Visual Studio 2017 and 2015 installed and setup working with Unity, and I am evaluating Rider. I installed Rider and opened my Unity project. Rider complained that .NET 4.5 wasn't installed (which it was), and gave me a link to download it. I followed the link and downloaded and installed it again, and restarted Rider. Rider still insisted .NET 4.5 isn't installed and as a result gives me tons of errors in my project.
I checked Windows installed Apps and it clearly shows the .NET 4.5.1 and 4.5.2 SDKs installed, yet Rider apparently can't see them.
@John: Rider only recognizes the .NET 4.5 Framework as .NET 4.5, not the 4.5.1 and 4.5.2 Frameworks. You you should be able to change the used version for every Project however; just right-click on an opened Project in the Solution Explorer and select 'Properties' and there choose the desired target framework.
Plain 4.5 is also installed on my system according to what I see on disk (in C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework )
Setting the Rider Unity Preferences in Unity to use 3.5 seems to work, although there are several notices that I shouldn't be doing this so I would rather get it working with 4.5.
You may manually put 4.5.1 instead of 3.5 or 4.5 in Rider Unity Preferences in Unity.
Plugin also has code for windows which is intended to detect target frameworks on PC.
But I see, that you wrote, there is 4.5 in the folder.
Could you please collect msbuild log?
Run Rider in internal mode and execute "Reload project and show logs" context action on project from Solution Explorer. It that case Rider will reload a project, collect all information from MsBuild and show log file in editor. Thanks!
Hey there! Is it possible to do Xamarin development using Rider without VS being installed? If so, what all would we need to install to do that? To the best of my knowledge, Xamarin is only able to be installed within Visual Studio anymore, so I just wanted to make sure.
Thanks for the awesome progress with Rider so far!
@Jura - is there any update on Oleg's September comment re: the need for a VS license for the build tools? From what I'm reading, the VS tools are a supplement, so require a full VS license (this is mentioned in the comments in response to a question here: https://blogs.msdn.microsoft.com/vcblog/2016/11/16/introducing-the-visual-studio-build-tools/ ). Need more clarity on this in this post, or an alternative build chain if the VS tools cannot be used due to licensing.
Yes if you use the MIT version of MSBuild happy days, you don't require a VS license to build. If you're keen i found jetbrain's fork of msbuilb https://github.com/JetBrains/msbuild/tree/JetBrainsToolset20180207
I've successfully built this repo and currently using it with rider.
Hi all! I'm writing to say that we have finally built and released our custom MSBuild, you can use it without Visual Studio license:
Please note that MSBuild doesn't include some targets (ex. Microsoft.WebApplication.targets), which may cause build errors.
We would be very grateful if you could try it and share your feedback with us.
Just the steps described in this post were not enough to get my builds working. I additionally had to download the visual studio 2017 build tools here:
https://www.visualstudio.com/downloads/#d-build-tools (thanksJackson Rakena)
I installed everything under web, plus a bunch of other things.
I also checked the nuget install box.
I additionally ran the two following commands in powershell as administrator (I don't know if they were necessary or not):
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
choco install visualstudio2017-workload-webbuildtools
As described here: https://stackoverflow.com/questions/47797510/the-getreferencenearesttargetframeworktask-task-was-not-found?rq=1
Finally, I used the auto-detected version 15 of msbuild, not the one provided by jetbrains. The issue that I was running into was the one described in the stack overflow question above.
Update June 18, 2018: Updated binaries to include the fix for “The “GetReferenceNearestTargetFrameworkTask” task was not found.” when building app project with reference to a library project (RIDER-14558).
Wanted to do a WPF app with Rider. Just creating an empty project gives me this:
Microsoft.Common.CurrentVersion.targets(3045, 5): [MSB3091] Task failed because "resgen.exe" was not found, or the correct Microsoft Windows SDK is not installed. The task is looking for "resgen.exe" in the "bin" subdirectory beneath the location specified in the InstallationFolder value of the registry key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SDKs\Windows\v8.0A\WinSDK-NetFx35Tools-x86. You may be able to solve the problem by doing one of the following: 1) Install the Microsoft Windows SDK. 2) Install Visual Studio 2010. 3) Manually set the above registry key to the correct location. 4) Pass the correct location into the "ToolPath" parameter of the task.
What am I supposed to do to fix this? Installed Windows SDK, JetBrains MSBuild, .NET 4.5 Framework and tried all kinds of things mentioned here. But I can't even get Rider to recognize .NET 4.5. Do I really need to install Visual Studio 2017 to get Rider to work?
If I need to do something like Jack Davidson38 recommended, this is just awful.
EDIT: I figured it out. The project was set to .Net 3.5 by default, and I didn't realize that. I needed to install .Net 4.6.1 SDK to compile that 3.5 project, having .Net 4.7.2 SDK did not work.
So for me, everything started working once A) downloaded Jetbrains version of MSBuild, B) Installed .Net 4.6.1 SDK C) Selected proper target (4.6.1)
Sorry for confusion.
Rider keeps asking me to install "Microsoft .net framework 3.5 developer pack" after I click the Download button in the balloon but Microsoft only provides Microsoft .net framework 3.5 runtime installer in the website and only newer.Net framework has the developer pack. I have Visual Studio 2008 installed on my machine but I think Rider cannot find what it needs. What should I do?
@Qrji, It may depend on the app you are building. Do you really need it to target dotnet 3.5? If you are developing Unity, consider switching to new mono runtime in Unity. For regular app just change TargetFrameworkVersion in csproj.
In case you really need to target dotnet 3.5 try to follow this article https://docs.microsoft.com/en-us/dotnet/framework/install/dotnet-35-windows-10
Get back to me, if it doesn't help.
Yes, one of my school projects needs to target the .NET 3.5 platforms. I am developing something based on a .NET 3.5 Visual Studio project. I had enabled the .NET Framework 3.5 in Control Panel before I asked the question here. By the way, I am using Windows 7.
Maybe Rider has any setting that I can use it to target to the correct .NET 3.5 framework directory?