我是一个完整的初学者并遵循这本书:https ://pragprog.com/titles/dswdcloj3/web-development-with-clojure-third-edition/
我按照书中和这里关于部署到 Heroku 的说明进行操作:https ://luminusweb.com/docs/deployment.html#heroku_deployment但我遇到了一些问题。
这是我的问题和我已采取的步骤。我在这里使用来自留言簿控制器的源代码并对其进行修改,只是试图让应用程序在 Heroku 中运行(即能够创建帐户、登录并发布消息)。这是我的仓库:https ://github.com/johnbradens/guestbook-heroku
这是我的步骤:
git init
git add .
git commit -m "initial commit"
I added a bin/build file and ran chmod u+x bin/build (based on instructions from https://folcon.github.io/post/2020-04-12-Fulcro-on-Heroku/, because it was saying that react wasn't installed)
I added heroku buildpacks nodejs & clojure (otherwise it said it couldn't read the npm from bin/build)
heroku addons:create heroku-postgresql
git push heroku main
这是我在查看 Heroku 应用程序时看到的:
当我运行时,heroku run lein run migrate
我收到以下错误:
Syntax error compiling at (/tmp/form-init6415984187052473661.clj:1:73).
could not find a non empty configuration file to load. looked in the classpath (as a "resource") and on a file system via "conf" system property
我尝试编辑,env/prod/resources/config.edn
但我不确定如何处理它。我尝试了很多东西,但都没有奏效。
env/prod/resources/config.edn
这是我在更改文件时尝试的示例。上面的链接之一说只有{:prod true}
这样,这就是我现在所拥有的,但我也尝试过:
{:prod true
:port (System/getenv "PORT")
:database-url (System/getenv "JDBC_DATABASE_URL")
}
编辑:感谢 clojure 松弛,我发现我的 env 文件夹被忽略了,并创建了一个 prod-config.edn 文件,我在该文件中有上述文本。我尝试再次推送到 Heroku,但仍然收到与 Web 应用程序上的图像相同的错误,并且当我运行heroku run lein run migrate
找不到配置文件时仍然收到相同的错误消息。
我应该怎么办?