The Windows installation instructions do not seem to work. They say to add the installation path to PATH and then julia should be runnable from the console but for me that doesn't seem to be true (maybe I am doing something stupid?):

Adding the bin folder works but that is not recommended since it changes what libraries other executables will load (due to how Windows look up what shared library to load):

@logankilpatrick Any thoughts how to get this resolved?
I鈥檒l boot up my windows computer tomorrow and try to help.
I had a brief look at this, and it seems @KristofferC is right. To make it work, we need to add \bin at the end of the path. However, I don鈥檛 understand how adding \bin at the end may cause trouble (the entire shared libraries thing). Can you point to a source that explains the shared libraries part so I can look into this?
I am not an expert but as far as I understand, Windows searches the folders in PATH when looking for shared libraries (https://docs.microsoft.com/en-us/windows/win32/dlls/dynamic-link-library-search-order):
The directories that are listed in the PATH environment variable.
Since we bundle a bunch of common libraries in bin (libLLVM, libgit2 etc), adding this folder to PATH means that it will cause Windows to also look there for shared libraries for any application that starts (similar to LD_LIBRARY_PATH on Linux). I don't know how much it matters in practice though, I've just seen some people saying not to put the bin folder in PATH due to this reason).
I found a very hacky way to get this working, and I'm not sure if this is what we want. Here's what I've done:
I created a .bat file in the C:\Users\username\AppData\Local\Julia-x.y.z\ folder called julia.bat.
My folder looks like this now:

julia.bat:
%~dp0\bin\julia
The %~dp0 part gets the current working directory of the batch file, and the rest just runs the julia.exe executable in the bin folder.
Again, I'm very unfamiliar with the whole shared libraries thing, and I'm not sure if this helps in any way.
Maybe the windows installer should create that file? When you compile julia on Windows you get a .bat file with
@"%~dp0"\usr\bin\julia.exe %*
so it seems to make sense to provide a similar one with the installation as well perhaps? cc @musm.
@KristofferC +1
Opened an issue about it: https://github.com/JuliaLang/julia/issues/34552.
The main reason for this is for classes that want students to instantiate their projects - which can only be done from the command line on startup.
If the instructions do not work, at the very least we should delete them.
The main reason for this is for classes that want students to instantiate their projects - which can only be done from the command line on startup.
No, and we should probably document better how to do it in scripts then.
cd(@__DIR__)
# Get packages all packages installed and set to the correct versions
using Pkg; Pkg.activate(".."); Pkg.instantiate()
is a nice way to activate and instantiate a project that is in the same directly as the script for example.
Generally, in Windows, if you have to go to the command line then you've already lost.
Since we bundle a bunch of common libraries in bin (libLLVM, libgit2 etc), adding this folder to PATH means that it will cause Windows to also look there for shared libraries for any application that starts (similar to LD_LIBRARY_PATH on Linux). I don't know how much it matters in practice though, I've just seen some people saying not to put the bin folder in PATH due to this reason).
This is definitely a problem and will cause issues with compiling stuff. mingW-64 for example has issues if Julia is in the path, so packages like ODEInterface.jl will have issues if Julia is in the path because it wants to use mingW during its build. Of course, this in theory goes away if all binaries are provided, but in practice it's somewhat of a minefield.
Cc @jessebett
Is this still an issue? I installed Julia 1.4.2 and 1.5.0 on Windows a few times recently and instructions worked out of the box.
Closing since this seems to be verified and working. Let's reopen if necessary
Most helpful comment
Opened an issue about it: https://github.com/JuliaLang/julia/issues/34552.