lein Datomic :dev 协议给出了“不支持的协议:dev”
lein Datomic :dev protocol gives `Unsupported protocol :dev`
这是我无法摆脱的错误:
Unsupported protocol :dev datomic.error/arg (error.clj:57)
我一直在按照找到的各种说明进行操作 here, here and here。
在 project.clj 我在依赖项中有这个:
[com.datomic/datomic-pro "0.9.5350"]
当上面有 free
而不是 pro
时,这个项目运行良好。
还有 project.clj 中的这一行:
:repositories {"my.datomic.com" {:url "https://my.datomic.com/repo"
:creds :gpg}}
在目录 ~/.lein
中,我有一个名为 credentials.clj.gpg
的加密文件,它是从 credentials.clj
文件生成的,如下所示:
{#"my\.datomic\.com" {:username "chris@xxxxxxx.org"
:password "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}
gpg-agent
是运行宁。但这似乎也无济于事。
我的主要问题是我不知道这一切应该如何组合在一起。例如,lein 如何知道 public 键用于
解密 credentials.clj.gpg
文件? lein 是否使用来自“https://my.datomic.com/repo”页面的信息?
从 here 看来确实有一种方法可以使用 :dev
而无需 gpg 加密文件。
总结
我希望使用 lein 项目中的 :dev
Datomic 数据库,但我发现的说明不够清晰,无法遵循。
更多信息
要验证您是否已将 datomic-pro
安装到计算机的 .m2
存储库中,这里是(示例)它最终的位置:
/home/your-unix-name/.m2/repository/com/datomic/datomic-pro/0.9.5385
请注意,您不应该从它所在的 bin
目录中 运行 maven-install
,而是从父目录中 - 这样它就可以获取 jar 文件实际上在父目录中。
安装 gpg-agent
是我做的最后一件事 - 最初的一个步骤
错过了。我认为您不必手动 运行 它。无论如何昨天 运行ning 没有帮助,但今天重新启动 IntelliJ 一个对话框
弹出要求输入密码的窗口,因此应用程序得到了
将 Unsupported protocol :dev
错误消息传递给新错误消息:
user=> (go)
ConnectException Connection refused java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java:-2)
所以我启动了交易程序,现在应用程序已经完全过去了
:dev
的障碍是不受支持的协议。
使用 gpg 自动下载 Datomic 发行版是设置 Datomic 的一种选择。如果您不需要自动执行获取 Datomic 位的过程,您可以简单地使用随 Datomic 发行版打包的 bin/maven-install
脚本将 Datomic 安装到您的本地 Maven 仓库中。只需从 my.datomic.com 和 运行 bin/maven-install
从解压缩分发的根目录下载分发 zip 文件。
这个过程也被记录在案 here。
最好的,
马歇尔
这是我无法摆脱的错误:
Unsupported protocol :dev datomic.error/arg (error.clj:57)
我一直在按照找到的各种说明进行操作 here, here and here。
在 project.clj 我在依赖项中有这个:
[com.datomic/datomic-pro "0.9.5350"]
当上面有 free
而不是 pro
时,这个项目运行良好。
还有 project.clj 中的这一行:
:repositories {"my.datomic.com" {:url "https://my.datomic.com/repo"
:creds :gpg}}
在目录 ~/.lein
中,我有一个名为 credentials.clj.gpg
的加密文件,它是从 credentials.clj
文件生成的,如下所示:
{#"my\.datomic\.com" {:username "chris@xxxxxxx.org"
:password "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"}}
gpg-agent
是运行宁。但这似乎也无济于事。
我的主要问题是我不知道这一切应该如何组合在一起。例如,lein 如何知道 public 键用于
解密 credentials.clj.gpg
文件? lein 是否使用来自“https://my.datomic.com/repo”页面的信息?
从 here 看来确实有一种方法可以使用 :dev
而无需 gpg 加密文件。
总结
我希望使用 lein 项目中的 :dev
Datomic 数据库,但我发现的说明不够清晰,无法遵循。
更多信息
要验证您是否已将 datomic-pro
安装到计算机的 .m2
存储库中,这里是(示例)它最终的位置:
/home/your-unix-name/.m2/repository/com/datomic/datomic-pro/0.9.5385
请注意,您不应该从它所在的 bin
目录中 运行 maven-install
,而是从父目录中 - 这样它就可以获取 jar 文件实际上在父目录中。
安装 gpg-agent
是我做的最后一件事 - 最初的一个步骤
错过了。我认为您不必手动 运行 它。无论如何昨天 运行ning 没有帮助,但今天重新启动 IntelliJ 一个对话框
弹出要求输入密码的窗口,因此应用程序得到了
将 Unsupported protocol :dev
错误消息传递给新错误消息:
user=> (go)
ConnectException Connection refused java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java:-2)
所以我启动了交易程序,现在应用程序已经完全过去了
:dev
的障碍是不受支持的协议。
使用 gpg 自动下载 Datomic 发行版是设置 Datomic 的一种选择。如果您不需要自动执行获取 Datomic 位的过程,您可以简单地使用随 Datomic 发行版打包的 bin/maven-install
脚本将 Datomic 安装到您的本地 Maven 仓库中。只需从 my.datomic.com 和 运行 bin/maven-install
从解压缩分发的根目录下载分发 zip 文件。
这个过程也被记录在案 here。
最好的, 马歇尔