检查 Clojurescript jar 文件是否正常工作
Check that a Clojurescript jar file is working
我有一些 Clojurescript 源文件可以在计时器上将消息输出到浏览器控制台。最终我想从这些文件中创建一个 Clojars 库。到目前为止,我已经使用 lein 创建了一个 uberjar。该库的所有用户需要做的就是 :require
来自库的命名空间,并且应该将消息发送到浏览器控制台。看到这些消息就是我要执行的 "all working fine" 测试。
换句话说,我如何检查我创建的 jar 文件是否有效?我可以从一个新的 lein 项目开始,然后将 jar 文件放在一些特殊的 'un-managed' 目录和 :require
命名空间中吗?其实我不认为你可以用lein做这样的事情,所以才有这个问题。
假设您有一个 project.clj
文件已经包含行
(defproject bigco/biglib "0.1.0-SNAPSHOT”
...
运行
lein install
这将构建 JAR 并将其安装到您的本地 Maven 存储库中。
然后在您的新项目中,添加该依赖项并运行它。
如果您的 jar(jar 的定义当然包括 uberjar)不是完全来自 lein 项目,那么另一种方法是直接使用 Maven 2:
mvn install:install-file -Dfile=./my-deps.jar -DgroupId=my-deps -DartifactId=my-deps -Dversion=1.0.0 -Dpackaging=jar
此处 mvn
会将 jar 存储在本地 .m2
maven 存储库中。存储后,您可以在您机器上的任何 lein 项目中使用此 jar,方法是在依赖项部分中引用它:
[my-deps "1.0.0"]
Maven documentation 为此。
我有一些 Clojurescript 源文件可以在计时器上将消息输出到浏览器控制台。最终我想从这些文件中创建一个 Clojars 库。到目前为止,我已经使用 lein 创建了一个 uberjar。该库的所有用户需要做的就是 :require
来自库的命名空间,并且应该将消息发送到浏览器控制台。看到这些消息就是我要执行的 "all working fine" 测试。
换句话说,我如何检查我创建的 jar 文件是否有效?我可以从一个新的 lein 项目开始,然后将 jar 文件放在一些特殊的 'un-managed' 目录和 :require
命名空间中吗?其实我不认为你可以用lein做这样的事情,所以才有这个问题。
假设您有一个 project.clj
文件已经包含行
(defproject bigco/biglib "0.1.0-SNAPSHOT”
...
运行
lein install
这将构建 JAR 并将其安装到您的本地 Maven 存储库中。
然后在您的新项目中,添加该依赖项并运行它。
如果您的 jar(jar 的定义当然包括 uberjar)不是完全来自 lein 项目,那么另一种方法是直接使用 Maven 2:
mvn install:install-file -Dfile=./my-deps.jar -DgroupId=my-deps -DartifactId=my-deps -Dversion=1.0.0 -Dpackaging=jar
此处 mvn
会将 jar 存储在本地 .m2
maven 存储库中。存储后,您可以在您机器上的任何 lein 项目中使用此 jar,方法是在依赖项部分中引用它:
[my-deps "1.0.0"]
Maven documentation 为此。