I am doing the code gnome course (which the application is a Hangman) and I tried to start a module with Application which uses an Agent and is complainig this:
iex(1)> Dictionary.random_word
** (exit) exited in: GenServer.call(Dictionary.Runtime.Server, {:get, &Dictionary.Impl.WordList.random_word/1}, 5000)
** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
(elixir 1.13.0) lib/gen_server.ex:1019: GenServer.call/3
I tried to start with the atom mod: and start_module: on the file mix.exs
def application do
[
# mod: { Dictionary.Runtime.Application, [] },
start_module: { Dictionary.Runtime.Application, [] },
extra_applications: [:logger]
]
end
application.ex:
defmodule Dictionary.Runtime.Application do
use Application
def start(_type, _args) do
Dictionary.Runtime.Server.start_link()
end
end
server.ex :
defmodule Dictionary.Runtime.Server do
@type t :: pid()
@me __MODULE__
alias Dictionary.Impl.WordList
def start_link do
Agent.start_link(&WordList.word_list/0, name: @me)
end
def random_word() do
Agent.get(@me, &WordList.random_word/1)
end
end


















