Hello all, I just got a new work station and have been trying to set up a new Phoenix Project for an app I’m working on. However I’m running into an issue that I haven’t seen before. I’m able to run ‘mix phx.new hello’, but after I ‘cd hello’ and try to run any mix command, I get the following error:
I haven’t touched my dev.exs file, do I need to add anything to it? This is what it looks like:
use Mix.Config
# For development, we disable any cache and enable
# debugging and code reloading.
#
# The watchers configuration can be used to run external
# watchers to your application. For example, we use it
# with webpack to recompile .js and .css sources.
config :hello, HelloWeb.Endpoint,
http: [port: 4000],
debug_errors: true,
code_reloader: true,
check_origin: false,
watchers: [
node: [
"node_modules/webpack/bin/webpack.js",
"--mode",
"development",
"--watch-stdin",
cd: Path.expand("../assets", __DIR__)
]
]
# ## SSL Support
#
# In order to use HTTPS in development, a self-signed
# certificate can be generated by running the following
# Mix task:
#
# mix phx.gen.cert
#
# Note that this task requires Erlang/OTP 20 or later.
# Run `mix help phx.gen.cert` for more information.
#
# The `http:` config above can be replaced with:
#
# https: [
# port: 4001,
# cipher_suite: :strong,
# keyfile: "priv/cert/selfsigned_key.pem",
# certfile: "priv/cert/selfsigned.pem"
# ],
#
# If desired, both `http:` and `https:` keys can be
# configured to run both http and https servers on
# different ports.
# Watch static and templates for browser reloading.
config :hello, HelloWeb.Endpoint,
live_reload: [
patterns: [
~r{priv/static/.*(js|css|png|jpeg|jpg|gif|svg)$},
~r{priv/gettext/.*(po)$},
~r{lib/hello_web/views/.*(ex)$},
~r{lib/hello_web/templates/.*(eex)$}
]
]
# Do not include metadata nor timestamps in development logs
config :logger, :console, format: "[$level] $message\n"
# Set a higher stacktrace during development. Avoid configuring such
# in production as building large stacktraces may be expensive.
config :phoenix, :stacktrace_depth, 20
# Initialize plugs at runtime for faster development compilation
config :phoenix, :plug_init_mode, :runtime
# Configure your database
config :hello, Hello.Repo,
username: "postgres",
password: "postgres",
database: "hello_dev",
hostname: "localhost",
pool_size: 10
Sorry if I’m asking anything trivial, this is actually my first time setting up a Phoenix Project by myself.
I’ve tried several times to create the hello project following the Up and Running guide, I actually just tried again and am still getting the same error.
Where should the import_config "dev.secret.exs" line be located?
I also just tried to create the project in a different directory and I’m getting the same error, import_config "dev.secret.exs" is also still in the same place.
It should be in the dev config, prod might have its own secret. Try to kill your generator and install it again. Something like mix archive.uninstall phx.new and then mix archive.install hex phx_new 1.4.0.
I just generated a project and see that only prod has a secret and it’s prod.secret: import_config "prod.secret.exs", dev should just work out of the box.
Unfortunately still getting the same error. Like you said, dev should work out of the box, which is why I think there is something wrong with my development environment/how I set it up and not the ‘hello’ project
OK, seems like it, but it can’t find some file (/Users/htran/Desktop/hello/config/dev?). You may push the project into a public repo so that we can try it, if it works in someone else’s environment then it’s on yours.
Yeah the error threw me off, because it says its looking for /config/dev, which looks like a folder, but there are only .exs files in the config directory.